数组是一组有序数据的集合,数组中的每一个数据都属于同一种数据类型。数组中的各个元素可以用数组名和下标来唯一地确定。一维数组只有一个下标,多维数组有两个以上的下标。在C语言中数组必须先定义,然后才能使用。一维数组的定义形式如下:
数据类型 数组名[常量表达式];
其中,“数据类型”说明数组中各个元素的类型。
“数组名”是整个数组的标识符,它的定名方法与变量的定名方法一样。
“常量表达式”说明该数组的长度,即数组中的元素个数。常量表达式必须用方括号“[]”括起来,而且其中不能含有变量。下面是几个定义一维数组的例子:
定义多维数组时,只要在数组名后面增加相应于维数的常量表达式即可。对于二维数组的定义形式为:
数据类型 数组名[常量表达式1] [常量表达式2];
例如,要定义一个10×10的整数矩阵A,可以采用如下的定义方法:
int A[10][10];
需要指出的是,C语言中数组的下标是从0开始的,譬如对于数组char x[5]来说,其中5个元素是x[0]~x[4],不存在元素x[5],这一点在引用数组元素时应当加以注意。C语言规定在引用数值数组时,只能逐个引用数组中的各个元素而不能一次引用整个数组;但如果是字符数组则可以一次引用整个数组。
例2-34 用数组计算并输出Fibonacci数列的前20项。
Fibonacci数列在数学和计算机算法研究中十分有用。Fibonacci数列是这样一组数:第一个数字为0,第二个数字为1,之后每个数字都是前两个数字之和。
程序执行结果: