7.1了解数组(课件)-高二《程序设计基础》同步教学(人民邮电版)

2023-07-31
| 26页
| 88人阅读
| 6人下载
普通

内容正文:

项目七 数组──歌唱比赛成绩统计及排名 学习目标 掌握数组的基本概念。 掌握数组的定义和初始化方法。 掌握数组的使用方法。 掌握排序算法。 进行程序设计时,经常需要存储或者处理大量相同性质的数据,例如每轮比赛的成绩,班里每个学生的学分,每个月的销售额等,可以利用前面介绍过的普通变量来表示这些数据。但是这会使程序员花大量时间进行变量定义和操作,不利于程序设计。 除了普通变量以外,C语言提供了数组数据类型。它能够解决上面的问题,从本质上来说,数组可以看作批量的变量数据。 本项目介绍C语言中数组的基本概念和使用方法,以及基于数组的排序算法。并以歌唱比赛成绩统计程序的设计过程为例,使读者能够更加深入的了解数组的使用方法和作用。 项目七 数组──歌唱比赛成绩统计及排名 项目七 数组──歌唱比赛成绩统计及排名 任务一 了解数组 任务二 输入10名选手的名字并保存 任务三 输入评委给每位选手打的分 任务四 找到每位选手的最高分 任务五 找到最低分 任务六 去掉最高分和最低分,求每位选手的平均分 任务七 根据选手得分排名次 任务八 输出比赛结果 任务一 了解数组 数组是指一组类型相同并且占据连续空间的数据的有序集合。 数组用连续空间存储同类型的大量数据,所以数据的访问和处理是有规律的。 数组中的每个元素可以看作一个普通变量,可以通过数组名和下标作为变量名进行操作。 一维数组 数组定义方式如下: 元素类型 数组名[常量或者常量表达式]; 例如: int a[6];定义了一个存放6个int型数据的数组“a”,“a”是该数组的名字 数组名后面使用中括号“[]”。 中括号“[]”中的内容表示数组大小或者长度,也就是数组中的元素个数,它必须是常量或者常量表达式,不能是变量。 数组中的元素个数必须是大于0的整数。 数组对应内存中一块连续空间,而数组名就代表数组内存的起始地址。数组中各元素的具体结构如下所示。 int b[6]; b[0] b[1] b[2] b[3] b[4] b[5] 数组名还有另外一层含义,那就是数组的起始地址。 1 2 3 4 5 6 数组元素引用的说明 一维数组元素的引用格式为“数组名[下标]” 下标的范围从0开始,到元素个数n-1结束。所以对于有n个元素的数组,它的n个元素分别是a[0],a[1],a[2]…a[n-1]。例如对于数组“char arr[5];”,第1个元素是arr[0],最后1个元素是arr[4],而arr[5]不属于数组。 访问不属于数组元素的操作称为“数组下标越界”,虽然C语言编译器对于下标的越界 访问不会作为错误处理,但是程序员应该自己检查下标的正确性,以免造成错误。 数组元素引用的说明(2) 数组元素可以作为独立的变量,所以能够进行运算以及输入输出操作。 由于数组元素连续存放,下标是连续的整数,所以可以很方便地利用循环语句来访问数组中的每一个元素。例如打印数组“char arr[5];”中的每个元素 char arr[5]; int i; for(i=0;i<5;i++) printf("%c",arr[i]); 数组元素不能整体赋值或引用,只能对每个元素单独操作 一维数组初始化的格式为: 类型 数组名[常量或者常量表达式]={初值列表}; 其中初值列表中的多个值用逗号间隔。 例如: int a[6]={1,2,3,4,5,6}; 数组元素初始化的几种形式 ① 对全部元素初始化 将所有数组元素的初值依次放到初值列表中。 int a[6]={1,2,3,4,5,6}; int a[ ]={1,2,3,4,5,6}; ② 对部分元素初始化 只对前面几个元素赋值,其余元素自动设置为“0”。例如“int a[6]={2,4,6};”的结果为“a[0]=2,a[1]=4,a[2]=6,a[3]=0,a[4]=0,a[5]=0”。如果初值个数大于数组元素个数,就会造成语法错误。 二维数组 二维数组则可以看作是数组的数组,每一个元素是类型长度相同的一维数组。 如果将一个一维数组看作顺序排列的一行数据,那么二维数组相当于若干行相同长度的数据排列,也就是M行N列数据,逻辑上像一个“M*N”的矩阵。 二维数组定义的格式为: 类型 数组名[常量或者常量表达式][常量或者常量表达式]; 第1个中括号中的值表示第一维长度,也就是行数;第2个中括号的值表示第二维长度,也就是每一行中的列数。 int a[3][4

资源预览图

7.1了解数组(课件)-高二《程序设计基础》同步教学(人民邮电版)
1
7.1了解数组(课件)-高二《程序设计基础》同步教学(人民邮电版)
2
7.1了解数组(课件)-高二《程序设计基础》同步教学(人民邮电版)
3
7.1了解数组(课件)-高二《程序设计基础》同步教学(人民邮电版)
4
7.1了解数组(课件)-高二《程序设计基础》同步教学(人民邮电版)
5
7.1了解数组(课件)-高二《程序设计基础》同步教学(人民邮电版)
6
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。