
# C语言:数组 数组由数据类型相同的一系列元素组成 是一种容器(放东西的东西), 特点是: 其中所有的元素具有相同的数据类型; 一旦创建,不能改变大小 (数组中的元素在内存中是连续依次排列的)
定义数组
<类型>变量名称[元素数量] 例
int grades[100]:
double weight[20];
- 元素数量必须是整数

数组的单元
- 数组的每个单元就是数组类型的一个变量
- 使用数组时放在[中的数字叫做下标或索引,下标从0开始计数:
初始化数组
数组的集成初始化
int
- 直接用大括号给出数组的所有元素的初始值
- 不需要要给出数组的大小,编译器替你数数
int
指定初始化器
可以初始化指定的数组元素
int
- 对于一般初始化,在初始化一个元素后,未初始化的元素都会被设置为0.
- 如果指定初始化器后面有更多值,后面的值将被用于初始化指定元素后面的元素
- 如果再次初始化指定元素,后者会覆盖之前的初始化。
- 对于未指定元素大小数组的初始化,编译器会设置一个刚好恰当的值。
数组的大小
sizeof给出整个数组所占据的内容的大小,单位是字节
sizeof
sizeof(a[0])给出数组中单个元素的大小,于是相除就得到了数组的单元个数
遍历数组

注: 数组作为函数参数时,往往必须再用另一个参数来传入数组的大小。 数组作为函数的参数时: * 不能在中给出数组的大小 * 不能再利用 sizeof来计算数组的元素个数!
二维数组
二维数组的初始化
int
- 列数是必须给出的,行数可以由编译器来数
- 每行一个{},逗号分隔
- 最后的逗号可以存在,有古老的传统
- 如果省略,表示补零
- 也可以用定位(C99ON)