由若干个类型相同的相关数据项按顺序存储在一起形成的一组同类型有序数据的集合
思维导图更清晰一点
注意事项:1.C语言的下标从0开始定义的,第一个数的位置为0,而不是1
eg. 第三排四列的元素为 a[2][3] 而不是a[3][4]
2.源代码的开头先定义数组的长度,后续修改比较方便
#define N 6
int a=[N][N];
3.About下标值:score(9)//不能使用圆括号
honor(2,3)//不能圆括号&&使用行列下标不能写在一个括号里
honor[3,4]//使用行列下标不能写在一个括号里
vivo = {1,2,3,4,5}//不能整体赋值`
数组的初始化
初始化就是给元素赋值,
short a[2][3]={
{
1,2,3},{
5,6,7}};
如果你不赋值的话,数组会被自动初始化的值为0
short a[3];
等价于
short a[3]={
0,0,0};
PS:提供的初值个数不能多于数组元素的个数,但可以少于数组元素的个数,多出来的部分会自动初始化为0
易错,常考题型
ONE
二维数组可以省略前面的元素,即可以省略数组的行数
int a[][3]={
{
1,2,3},{
3,2,1},{
9,8,7},{
4,7,8},{
2,9,0},{
6,7,8}};
等价于
int a[6][3]={
{
1,2,3},{
3,2,1},{
9,8,7},{
4,7,8},{
2,9,0},{
6,7,8}};
TWO
一般,省略的第一维的大小按如下规则确定:
初值个数能被第二维整除,所得的商就是第一维的大小;若不能整除,则第一维的大小为商再加1。例如,int a[ ][3]={ 1,2,3,4};等价于:int a[2][3]={ 1,2,3,4};
若分行初始化,也可以省略第一维的定义。下列的数组定义中有两对{ },已经表示a数组有两行。
static int a[ ][3]={ {1,2},{4}};
参考文献:https://blog.csdn.net/qq_32744005