携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第24天,点击查看活动详情
数组
在许多程序中,数组很重要。数组可以作为一种储存多个相关项的便利方式。数组是按顺序储存的一系列类型相同的值,如10个char类型的字符或15个int类型值,整个数组有一个数组名,通过整数下标访问数组中单独的项或元素。例如,以下声明:
float debts[20];
声明debts是一个内含20个元素的数组,每个元素都可以储存float类型的值。数组的第1个元素是debts[0],第2个元素是debts[1],一次类推,直到debts[19].注意,数组元素的编号从0开始,不是从1开始。可以给每个元素float类型的值。例如,可以这样写:
debts[5]=32.54;
debts[6]=1.2e+21;
实际上,使用数组元素和使用同类型的变量一样。例如,可以这样把值读入指定的元素中:
scanf("%f",&debts[4]); //把一个值读入数组的第5个元素
这里要注意一个潜在的陷阱:考虑到影响执行速度,C编译器不会检查数组的下标是否正确。下面是错误示范:
debts[20]=88.09; //该数组元素不存在
debts[28]=88.05;
编译器不会查找这样的错误。当运行程序时,这会导致数据被放置在已被其他数据占用的地方,可能会破坏程序的结果甚至导致程序异常中断。
数组的类型可以是任意数据类型。
int nannies[34]; //可储存34个int类型整数的数组
char cakes[45]; //可储存45个字符的数组
long appples[65]; //可储存65个long类型的数组
可以把字符串存储在char类型的数组中。如果char类型的数组末尾包含一个表示字符串末尾空字符\0,则该数组的内容就构成了一个字符串。
用于识别数组元素的数字被称为下标,索引或偏移量。下标必须是整数,而且要从0开始计数,数组的元素被依次储存在内存中相邻的位置。