二维数组
1.二维数组的定义
-定义方式:(声明时列数不能省略,行数可以省略)
数据类型 数组名[常量表达式
][常量表达式
];
行 列
-元素个数=行数*列数
-例int a[3][4]
;
2.数组元素的存放顺序
-原因:内存是一维的
-二维数组:按行序优先
-例 int a[3][2];
3.理解
-int a[i][j];
a[i]是行名也可理解为一维数组名,每个元素a[i]由包含j个元素的一维数组组成。
4.杨辉三角
打印前10行杨辉三角
int a[10][10] = {{1}};
int i,j;
for(i = 0; i < 10; i++){
a[i][0] = 1;
for(j = 0; j < i; j++)
a[i][j] = a[i-1][j-1] + a[i-1][j];
}
for(i = 0; i < 10; i++){
for(j = 0; j < i; j++)
printf("%d ", a[i][j]);
putchar('\n');
}