文档详情

c语言程序设计_数组.ppt

发布:2017-06-25约1.14万字共36页下载文档
文本预览下载声明
数组是有序并具有相同性质类型的数据的集合,它是某种类型的数据,按照一定的顺序组成的,因此数组属于构造类型,又称导出类型数据。 当程序中需要使用数组元素时,必须先对数组进行定义。数组中每个成员称为数组的一个元素,数组元素如同其他基本变量一样可以被赋值和在表达式中使用。构成数组的各个元素必须具有相同的数据类型,不允许在同一数组中出现不同类型的变量。 数组中的元素是按顺序排列的,各个元素在数组中的位置由数组的下标来确定,C语言数组的下标必须是正整数、0或者整型表达式,数组是通过下标去访问它的各个成员的。 引用同一数组中的各个元素必须使用同一数组名。访问数组中的一个具体元素,必须通过使用数组名及其后的方括号中的下标来实现 6.2.1 一维数组的定义 格式: 类型说明符 数组名[常量表达式]; 功能: 定义一个一维数组,常量表达式的值,就是数组元素的个数。 例如:int a[10];它表明数组名为a,此数组有10个元素. 说明: (1)数组名规定和变量名相同,遵守标识符命名规则。 (2)数组名后是用方括弧括起来的常量表达式,不能有圆括弧。 (3)常量表达式表示元素个数,即数组的长度。 例:a[10]中10表示a数组有10个元素。 (4)数组元素的下标从0开始。如:a[0],a[1],a[2], …,a[9]。 (5)常量表达式中可以包括常量和符号常量,不能包含变量。C不允许对数组的大小作动态定义。 例如: 下面的定义是错误的。 int n; scanf(″%d″,n); int a[n]; 6.2.2 一维数组元素的引用 数组必须先定义,后使用。C 语言规定只能逐个引用数组元素,不能一次引用整个数组。 数组元素的表示形式为: 数组名[下标] 下标可以是整型常量或整型表达式。 例如:a[0]=a[5]+a[7]-a[2*2]。 例6.1 建立一个数组,数组元素 a[0]到a[9]的值为0~9,然后按逆序输出。 main() { int i,a[10]; for(i=0;i=9;i++) a[i]=i; for(i=9;i=0;i--) printf(″%d ″,a[i]); } 运行结果 9 8 7 6 5 4 3 2 1 0 6.2.4 一维数组应用举例 例6.2 求一已知数组各元素的平均值。 #includestdio.h #define N5 int a[N]={10,20,30,40,50}; main() { int i; float s,v; for(s=i=0;iN;i++) s=s+a[i]; v=s.N; printf(″The average is%6.2f\n″,v); } 运行结果: The average is 30.00 格式: 类型说明符 数组名[常量表达式1][常量表达式2] 功能: 定义一个二维数组。表达式 1是数组元素的行数,表达式2是数组元素的列数。 例如: float a[3][4],b[5][10]; 定义a为3×4(3行4列)的数组,b为5×10(5行10列)的数组。 可把二维数组看做是一种特殊的一维数组,它的元素是一个一维数组。 例如:a[3][4],可以把a看做是一种特殊的一维数组。它有3个元素:a[0]、a[1]、a[2],每个元素又是一个包含4个元素的一维数组。 可以把a[0]、a[1]、a[2]看做是三个一维数组的名字,相当于: float a[0][4],a[1][4],a[2][4]; 把a[0]、a[1]、a[2]看做一维数组名。C 语言的这种处理方法在数组初始化和用指针表示时显得很方便,这在以后会体会到。 在 C语言中,二维数组中元素排列的顺序是按行存放,即在内存中先顺序存放第一行的元素,再顺序存放第二行的元素. 除二维数组外,多维数组一般很少用到,其原因一是很少有这方面的应用要求; 二是多维数组往往需要占用大量的内存空间,而对多维数组的访问效率也很低。所以我们重点讨论二 维数组。 6.3.2 二维数组的引用 和一维数组一样,
显示全部
相似文档