C语言二维数组
二维数组的创建
type array_name [row_const][col_const];
- type 二维数组类型
- array_name 二维数组名字
- row_const 行
- col_const 列
#include <stdio.h>
int main() {
/*
二维数组的创建
*/
int arr1[3][4];
double arr2[2][3];
long arr3[4][4];
return 0;
}
二维数组的初始化
#include <stdio.h>
int main() {
/*
二维数组的初始化
*/
int arr[3][4] = {1 , 2 , 3 , 4 , 5};
return 0;
}
我们可以把二维数组想象成一个矩阵。3代表行,4代表列。
1 2 3 4
5 0 0 0
0 0 0 0
也可以指定行初始化。
#include <stdio.h>
int main() {
/*
二维数组的初始化
*/
int arr[3][4] = { {1 , 2} , {3 , 4} , {5} };
return 0;
}
1 2 0 0
3 4 0 0
5 0 0 0
二维数组的使用
二维数组的行标是从0开始,列标也是从0开始。所以取出二维数组的第一个元素即 数组名[0][0]。那么我可以通过双层循环的方式来遍历整个二维数组。
#include <stdio.h>
int main() {
/*
二维数组的遍历
*/
int arr[3][3] = { 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 };
int i = 0;
for (i = 0; i < 3; i++) {
int j = 0;
for (j = 0; j < 3; j++) {
printf("%d " , arr[i][j]);
}
printf("\n");
}
return 0;
}
结果;
二维数组计算行的大小和列的大小
#include <stdio.h>
int main() {
int arr[3][4] = { 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 };
int row = sizeof(arr) / sizeof(arr[0]);
int col = sizeof(arr[0]) / sizeof(arr[0][0]);
printf("row = %d col = %d" , row , col ); // row = 3 col = 4
return 0;
}