一、数组
由一个或多个相同类型数据组成的集合。
特点:
数据类型相同且内存连续。
1.1 一维数组
格式:
存储类型 数据类型 数组名 [元素个数]
int arr [5];
由此我们定义了一个int 类型的数组,可以存储5个int类型的数据。
注意:只有在定义时,5表示数组的元素个数,其余情况下5均表示数组中的第六个元素。
例如:
1.2 数组名
数组名表示数组的首地址,是地址常量,不能为最左侧的数值。
1.3 数组的初始化
1.3.1 全部初始化
int a[5]={5,6,7,8,9};
由此,我们将数组定义为大小为5且将5个元素均初始化。
1.3.2 部分初始化
int a[5]={8,9};
未初始化部分值为0。
1.3.3 未初始化
int a[5];
值为随机值.
1.3.4 定义数组元素值都为某个数(此处用0举例)
int a[40]={0};
int a[40]={ };
1.4 数组的遍历
在上述代码中,我们将数组a定义为了大小为5且数组元素初始化均为0的数组。然后通过scanf函数重新给数组赋值,通过for循环将重新赋值的数组打印出来。
例如:
题目要求打印数组中的最大元素
首先,我们定义并初始化数组a,然后重新给数组赋值,在接下来的处理中,我们先假设数组中第一个元素是最大的,即max a[0],然后将其与剩下4个元素一次进行大小的比较,若剩下的元素数值大于a[0],则将较大的赋值给a[0],最后即可打印出数组中数值最大的元素。
1.5 数组内存的分配
通过打印数组元素的地址可以发现数组的地址分配有如下规律:相邻且依次增大十六进制的四。
待更新。。。