1. 格式:存储类型 数据类型 数组名[行数][列数]
int a[2][3];
2. 访问元素:数组名[行下标][列下标];(下标从0开始)
a[0][0]:第一行第一列的元素~a[1][2];行下标、列下标都不能越界
行数可以省略,列数不能省略。
int a[2][]={1,2,3,4,5,6};
3. 数组元素个数:
行数*列数
4. 二维数组大小 = 数据类型大小*行数*列数
sizeof(数组名)
5. 数组名:a:第一行的首地址,a+1:第二行的首地址
6. 初始化:
1) 全部初始化:
int a[2][3]={1,2,3,4,5,6};//顺序赋值
int a[2][3]={{1,2,3},{4,5,6}};//按行赋值
2) 部分初始化:未被赋值的元素值为0
int a[2][3]={1,2,3,4};//顺序赋值 1 2 3 4 0 0
int a[2][3]={{1,2},{4,5}};//按行赋值 1 2 0 4 5 0
3) 未初始化:随机值,需要单独赋值
int a[2][3];
7. 内存分配
8. 二维数组的遍历
for循环嵌套,外层行数,内层列数
int a[m][n]={};
for(i=0;i<m;i++)//行下标
{
for(j=0;j<n;j++)//列下标
{
scanf()/printf()
}
}