魏祥 荆蕾 烟台大学文经学院 1
1 荆蕾 烟台大学文经学院
什么是数组? 是一种数据类型,属于构造类型的一种,由基本 类型的数据按照顺序组合而成 数组:相同类型的数据的集合,数组中每个数据 称为数组的元素。 令用来处理类型相同的一批数据
3 ❖是一种数据类型,属于构造类型的一种,由基本 类型的数据按照顺序组合而成 ❖数组:相同类型的数据的集合,数组中每个数据 称为数组的元素。 ❖用来处理类型相同的一批数据 什么是数组?
引例: 处理某班10名学生某门课的成绩,求所有学生的平均成 绩及最高成绩 nan float sum, ave, al, a2, a3, a4, a5, a6, a7, a8, a9, a10; scanf(“%f%%f%f%f”,&al,&a2,a3,&a4,&a5); scanf(%f%f%f%f”,ca6,&a7,&a8,&a9,&a10); Sum=a1+a2+a3+a4+a5+a6+a7+a8+a9+a10; ave=sum/10 max =al if (a2> max)max=a2; if(a3> max)max=a3; 实际程序是不能这样写
4 处理某班10名学生某门课的成绩,求所有学生的平均成 绩及最高成绩 引例: main( ) { float sum, ave, a1, a2, a3,a4,a5,a6,a7,a8,a9, a10; scanf(“%f%f%f%f%f”,&a1,&a2,&a3,&a4,&a5); scanf(“%f %f%f%f%f”,&a6,&a7,&a8,&a9,&a10); sum=a1+a2+a3+a4+a5+a6+a7+a8+a9+a10; ave=sum/10; max = a1 ; if (a2> max ) max=a2; if (a3> max ) max=a3; ……….. ‘ 实际程序是不能这样写 }
引例: 思考: 学生成绩的下标是可以变化的 ai(i=1,2,…10) 能否使用循环来写程序? C语言中如何表示下标变量呢? 使用数组!
5 引例: 思考: 学生成绩的下标是可以变化的 ai ( i=1,2,…..10 ) 能否使用循环来写程序? C语言中如何表示下标变量呢? 使用数组!
52—维数组 521一维数组定义 维数组:只有一个下标的数组。 般形式为:类型符数组名[常量表达式l; 数组的类型实际上是 、数组名不能与同一函表示数组元素的个数,可 指数组元素的取值类数中其它变量名相同 以是整形常量、符号常量、 型。对于同一个数组,2、数组表数组在内常量表达式,不能为变量 其所有元素的数据类存中存放的首地址 #define n 30 型都是相同的。 int n=30: int ane int an: 例如:inta[10; 7
7 5.2 一维数组 5.2.1 一维数组定义 一维数组:只有一个下标的数组。 一般形式为:类型符 数组名 [常量表达式] ; 数组的类型实际上是 指数组元素的取值类 型。对于同一个数组, 其所有元素的数据类 型都是相同的。 1、数组名不能与同一函 数中其它变量名相同 2、数组名代表数组在内 存中存放的首地址 表示数组元素的个数,可 以是整形常量、符号常量、 常量表达式,不能为变量 例如: int a[10]; eg: #define N 30 int a[N]; eg: int n = 30 ; int a[n];