1.数组的概念
数组是⼀组相同类型元素的集合,由此可知,数组中存储的多个数据,类型相同,存放的元素个数不为0.
数组分为一维数组和二维数组。
2.一维数组的创建和初始化
2.1 数组创建
声明一个数组,我们必须规定数组的类型和元素的个数。
type arr_name[n];
type指定数组中存放的元素类型,例如int char float 等,也可以是自定义的类型。
arr_name是数组的名字
[n] :规定数组的大小,n为数组中元素个数,规定C语言中n必须为常量。
eg: 创造一个整型数组 int a[10]; 包含十个整型元素,且位置相邻。
2.2 数组的访问
在C语⾔中数组的访问提供了⼀个操作符 [ ] ,这个操作符叫:下标引⽤操作符。
数组访问要访问数组元素,请在方括号中写入数组名,后跟一个整数值。
访问也称为对数组进行下标或索引。
长度为n的数组的元素的索引从0到n -1。
如果a是一个长度为10的数组,它的元素用a [0], a[1],…, a [9]:
数组下标可以是任何计算结果为整数的整数表达式:a[1+3];
2.3 数组初始化
int a[10]={1,2,3,4,5,6,7,8,9,0} //完全初始化,元素与[]内规定常量相同
int a[10]={1,2,3} //不完全初始化,剩余元素补为0
int a[10]={0}; //全零数组,可自行输入
3.一维数组的使用
3.1 数组元素输入和输出
对于数组的元素输入输出,可以利用for循环遍历数组
例如:c程序提示用户输入一系列数字,然后以相反的顺序写入这些数字:
输入:1 2 3 4 5 6 7 8 9 0
输出:0 9 8 7 6 5 4 3 2 1
int a[10] = {0};
int i;
for(i = 0;i < 10;i++)
{
scanf("%d",&a[i]); //输入数据
}
for(i=9;i>=0;i--)
{
printf("%d",a[i]);
}
3.2 数组元素在内存中存储方式
数组随着下标的增⻓,地址是由⼩到⼤变化的,并且我们发现每两个相邻的元素之间相差4(因为⼀个整型是4个字节)。所以数组中元素是相邻存放的。
4.二维数组的创建
4.1 二维数组的概念
⼀维数组,数组的元素都是内置类型的,如果我们把⼀维数组做为数组的元 素,这时候就是⼆维数组,⼆维数组作为数组元素的数组被称为三维数组,⼆维数组以上的数组统称 为多维数组。
4.2 二维数组的创建
int m[5][9]; 5表示行数,9表示列数