第7章数组 课堂教学4学时 上机操作2学时 教学累计20学时 上机累计6学时
第7章 数组 课堂教学4学时 上机操作2学时 教学累计20学时 上机累计6学时
数组是有序数据的集合,数组中的 每一个元素都属于同一个数据类型 用一个统一的数组名和下标来唯 地确定数组中的元素 数组专用于处理大量同类型数据 每一个数组元素都可以当做单个变 量来使用
• 数组是有序数据的集合,数组中的 每一个元素都属于同一个数据类型 • 用一个统一的数组名和下标来唯一 地确定数组中的元素 • 数组专用于处理大量同类型数据 • 每一个数组元素都可以当做单个变 量来使用
维数组的定义和引用 维数组的定义 类型说明符数组名[常量表达式] 例如 int a[10] 表示:a为数组名,有10个元素 下标从0开始: a[0],a[1,a2],a③3],a[4] a5],a6],a[7],a[8],a9
一维数组的定义和引用 • 一维数组的定义 类型说明符 数组名[常量表达式]; • 例如: int a[10]; • 表示:a为数组名,有10个元素 • 下标从0开始: a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9]
注意 不允许动态定义数组 如:intn; scanf(“%d”,&n) 随机输入大小 int an
注意 • 不允许动态定义数组 如:int n; scanf(“%d”,&n); 随机输入大小 int a[n];
思考: a0],a[1,a2l,a3],a[4],a5],a6],a[7,a[8],a9] a0,a1,a2,a3,a4,a5,a6,a7,a8,a9有什么不同? 定义举例 float b[1+4, c[N; double d1[11,e5[71,X, y, Z
• 思考: a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[9] 与 a0, a1, a2, a3, a4, a5, a6, a7, a8, a9有什么不同? • 定义举例: float b[1+4], c[N]; double d1[11],e5[7], x, y, z;
维数组的引用 1.先定义后引用 数组中的每一个元素都可以作为一个变量 来访问 3.不能一次引用整个数组 数组元素的表示形式 数组名[下标] 注:下标可以是整型表达式(常量、变量) 应用形式比较 a[n]与a[5及 int aln]与inta[5]
• 一维数组的引用 1. 先定义后引用 2. 数组中的每一个元素都可以作为一个变量 来访问 3. 不能一次引用整个数组 • 数组元素的表示形式 数组名[下标] 注:下标可以是整型表达式(常量、变量) • 应用形式比较 a[n] 与 a[5] 及 int a[n] 与 int a[5]
应用举例 scant(%d”,&n); an]=a5]+an7]a[2*3]; 例7.1数组元素的引用 main( 注意,i变化 nti,a[10]; for(=0;i=0;i-) printf(%2d",a0) 运行结果:9876543210
• 应用举例: scanf(“%d”,&n); a[n]=a[5]+a[n-7]-a[2*3]; • 例7.1数组元素的引用 main( ) { 注意,i的变化 int i,a[10]; for(i=0;i=0;i--) printf(“%2d",a[i]); } 运行结果:9 8 7 6 5 4 3 2 1 0
课堂练习 修改例7.1对a数组各元素求和 修改例7.1找出a数组中能被3整除的 元素
课堂练习 • 修改例7.1对a数组各元素求和 • 修改例7.1找出a数组中能被3整除的 元素
答案 main( ntia[10],s=0; for(=0;i=0;i-) s=S+a printf(%d", s) 运行结果:45
答案 main( ) { int i,a[10],s=0; for(i=0;i=0;i--) s=s+a[i]; printf("%d",s); } 运行结果:45
答案 main() ntia[10],s=0; for(=0;i=0;i-) f(a[j9%3==0) printf( %2d",a) 运行结果:9630
答案 main( ) { int i,a[10],s=0; for(i=0;i=0;i--) if(a[i]%3==0) printf(“%2d",a[i]); } 运行结果:9630