二维数组的定义
定义方法:(声明列数不能省略,行数可以省略)
数据类型 数组名 [常量表达式] [常量表达式]
数组元素的存放顺序
原因:内存是一维的
二维数组:按行序优先
可以理解为二维数组是由多个一维数组组成的
行名a[0]、a[1]可以理解为一维数组名
1.一维数组名代表数组的起始地址,是个常量,不可修改
2.对数组名求sizeof是这个数组占用的总空间
例:int a[3][4](标号错位了,理解就好)
二维数组元素的引用
形式:数组名[下标][下标]
二维数组元素的初始化
分行初始化
按元素排列顺序初始化
* 复习问题
int a[2][3];
在这个二维数组中
a表示第一行的首地址,a+1表示第二行的首地址a[1]
a[0]表示第一行的首地址,"[]"取值符,维度降级,取值到行内,a[0]+1=&a[0][1]
当"&"取地址符遇到"[]"取值符号时,相互抵消,&a[0][0]=a[0],&a[0][0]+1=a[0]+1=&a[0][1]
练习
1.打印出杨辉三角
2.找出三行四列数组中的最大值