1、5.1 数组概述5.2 一维数组5.3 二维数组5.4 二维数组5.5 案例应用第第 5章章 数组数组15.1 数组概述数组概述前几章 使用的变量都属于 基本类型 ,例如整型、字符型、浮点型数据,这些都是简单的数据类型。对于有些数据,只用简单的数据类型是不够的, 难以 反映出数据的 特点 ,也难以有效地进行处理。【 例 5.1】 输入 10个学生的成绩,要求输出所有高于平均分的成绩。23#includevoid main() float a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,avg;scanf(“%f%f%f%f%f%f%f%f%f%f“,avg=(a1+a2+a3+a
2、4+a5+a6+a7+a8+a9+a10)/10;if(a1avg) printf(“%.2fn“,a1);if(a2avg) printf(“%.2fn“,a2);if(a3avg) printf(“%.2fn“,a3);if(a4avg) printf(“%.2fn“,a4);if(a5avg) printf(“%.2fn“,a5);if(a6avg) printf(“%.2fn“,a6);if(a7avg) printf(“%.2fn“,a7);if(a8avg) printf(“%.2fn“,a8);if(a9avg) printf(“%.2lfn“,a9);if(a10avg) pr
3、intf(“%.2fn“,a10);10个变量存储10个学生成绩繁琐5.1 数组概述数组概述10名学生 成绩, 需要 用 10个变量100名学生 成绩, 需要 用多少个变量?用 s1,s2,s3,s30表示成绩,能体现内在联系C语言用方括号中的数字表示下标,如用 s10表示数组名一组具有同一属性的数据45.1 数组概述数组概述对于 一组具有同一属性的数据 ,如学生成绩,利用数组来存储,既能从整个数组出发去处理其中的个别元素,如某一个学生的成绩,也能以统一方式处理数组的一批元素或所有元素,如部分或所有学生的成绩。数组是一种常用的构造数据类型。由一批元素构成的 数组 和 一批独立命名的变量 之间的
4、主要区别:55.1 数组概述数组概述u 数组是数目固定、类型相同的若干变量的 有序集合 。 数组中各数据的排列是有一定规律的,下标代表数据在数组中的序号 。u 每个数组都有一个名字,称为 数组名 。表示内存中一块连续的存储区域。u 数组元素是一种变量,也称为下标变量, 用一个 数组名 和 下标 来标识该 的元素 。u 数组中的每一个元素都属于 同一个数据类型 ,占用相同大小的内在单元。65.2 一维数组一维数组5.2.1 一维数组 的定义与初始化5.2.2 一维数组元素的引用5.2.3 一维数组 作为函数参数5.2.4 一维数组 应用 举例75.2.1 一维数组的定义与初始化一维数组的定义与初
5、始化u一维数组是最简单的数组u数组元素只有 1个下标 一维数组u数组元素 2个下标 二维数组u使用数组之前必须先进行定义。u定义数组的方法与定义变量的方法类似。 u在定义数组时需要指定这批变量的 类型、 数组名称 ,数组中包含变量的 个数 。 如 int a10;数组名数组名85.2.1 一维数组的定义与初始化一维数组的定义与初始化1.一维数组的定义u一维数组定义 的一般形式为 :存储类型 数据 类型 数组名 整型 表达式 ;下标从 0开始 ,如 int a10;a0,a1,a2,a 9与变量声明中的存储类型相同 可以是所有的 C数据类型 命名规则 与变量名相同数组元素的个数,也称为数组的长度
6、或大小 910#include#define SIZE 20void main() int n=5;int a15; int a25*2+1; static double a3sizeof(int); char a4SIZE;int a5-3; int a60; int a74.5; int a8(int)4.5; int a9n;/合法 ,整型常量/合法 ,整型常量表达式/合法 , sizeof(int)被认为是整型常量表达式/合法 ,符号常量/不合法 ,数组大小必须大于 0/不合法 ,数组大小必须大于 0/不合法 ,数组大小必须整数/合法 ,强制转换成整型/不合法 ,数组大小必须常量int n;scanf(%d, int an;不合法