二維數組C語言
『壹』 c語言二維數組怎麼表示
int
a[m][n];//就表示一個m行n列的整型二維數組
在c語言中數組的下標是從0開始的所以,數組a的元素個數可以表示為:a[0][0]-a[m-1][n-1]
例如:
#include<stdio.h>
int main()
{
int a[3][2],i,j;//定義一個3行2列的整型二維數組a
for(i=0;i<3;i++)//依次給二維數組賦值
for(j=0;j<2;j++)
scanf("%d",&a[i][j]);
printf("\n");
for(i=0;i<3;i++){//輸出二維數組
for(j=0;j<2;j++)
printf("%d ",a[i][j]);
printf("\n");
}
return 0;
}
/*
運行結果:
1 2
3 4
4 5
1 2
3 4
4 5
*/
『貳』 C語言二維數組
float a[10][3]; 存10個學生的3門成績
float b[10][2]; 存10個學生的3門成績 總分 和 平均分。
依次輸入每個學生的 3門成績。計算每人的 總分,計算每人的平均分。再輸出。
#include<stdio.h>
int main(){
float a[10][3];
float b[10][2];
int i,j;
for (i=0;i<10;i++){
printf("input Math Chinese English scores for student %d\n", i+1);
for (j=0;j<3;j++) scanf("%f",&a[i][j]);
};
for (i=0;i<10;i++) {
b[i][0]=0;
for (j=0;j<3;j++) b[i][0]=b[i][0]+a[i][j];
b[i][1]=b[i][0]/3.0;
};
for (i=0;i<10;i++) printf("Student %d, total=%g, mean=%g\n",i+1,b[i][0],b[i]
[1]);
return 0;
}
『叄』 c語言二維數組的賦值
1、首先在電腦上打開c語言編程軟體。然後創建項目。
『肆』 C語言 二維數組的使用
實際上是數據的一種組織方式,你可以想像成: 二維數組:行x列的長方形 三位數組:長x寬x高 的長方體 在c語言中,數組的意義,就是讓數組的名字可以當作指針來使用,這樣就能很方便的定位數據。 比如你有一個數組arry[300][300][300] 那麼他能存儲300*300*300=27000000個數據,如果要移動指針,那麼非常浪費,你需要移動27000000次才能移動到最後,而用數組的名字*(arry[300][300]++)只要300次就可以移動到最後一個數據。 當然數組和指針不僅僅是這個用途,還有更多精妙的用法等你靈光一現。
『伍』 c語言二維數組
1、首先是定義一個二級指針和行列變數【int **array,row,column;】。
『陸』 c語言中什麼是二維數組
二維數組的定義
二維數組定義的一般形式是:
類型說明符 數組名[常量表達式1][常量表達式2]
其中常量表達式1表示第一維下標的長度,常量表達式2 表示第二維下標的長度。例如:int a[3][4];
說明了一個三行四列的數組,數組名為a,其下標變數的類型為整型。該數組的下標變數共有3×4個,即:
a[0][0], a[0][1], a[0][2], a[0][3]
a[1][0], a[1][1], a[1][2], a[1][3]
a[2][0], a[2][1], a[2][2], a[2][3]
二維數組在概念上是二維的,即是說其下標在兩個方向上變化,下標變數在數組中的位置也處於一個平面之中,而不是象一維數組只是一個向量。但是,實際的硬體存儲器卻是連續編址的,也就是說存儲器單元是按一維線性排列的。如何在一維存儲器中存放二維數組,可有兩種方式:一種是按行排列, 即放完一行之後順次放入第二行。另一種是按列排列, 即放完一列之後再順次放入第二列。
在C語言中,二維數組是按行排列的。即,先存放a[0]行,再存放a[1]行,最後存放a[2]行。每行中有四個元素也是依次存放。由於數組a說明為int類型,該類型占兩個位元組的內存空間,所以每個元素均佔有兩個位元組。
『柒』 二維數組 C語言
指針你可以理解成分為兩類:一級指針, 二級指針.
二級指針其實還分有無數種類型.
我們知道,int a[10] ; 那麼,a[x]完全等於*(a+x);
但是二維數組並不是這樣的.二維數組的基礎是一維數組.二維數組的每個元素是個一維數組,也就是說,int a[10][20]; 其中a是一個指向了一個類型為int[20]的數組, 所以a的類型就是int *[10]或int[][10];所以, int a[i][j]; 那麼a[i][j]同樣是成全等於*(a+i*j+j)的.這樣就可以解釋為什麼D是對的.
『捌』 C語言編程 二維數組 輸出一個2*3的矩陣
#include<stdio.h>
void main()
{
int a[2][3];
int i,j;
printf("輸入一個2*3整型數組 ");
for(i=0;i<2;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
printf("
輸出一個2*3整型數組
");
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf(" ");
}
}
(8)二維數組C語言擴展閱讀:
注意事項
c語言的輸入輸出可用標准庫裡面的輸入輸出函數,即scanf和printf。
輸入輸出二維數組的例子:
#include<stdio.h>
int main()
{
int M = 5 , N = 5;
int array[M][N]; //定義一個5x5的int數組
printf("輸入:");
for(int i = 0 ; i < M ; i++){
for(int j = 0 ; j < N ; j++){
scanf("%d",&array[i][j]);
}
}
printf("輸出:");
for(int i = 0 ; i < M ; i++){
for(int j = 0 ; j < N ; j++){
printf("%d ",array[i][j]);
}
}
return 0;
}