第7章数组-xiu
- 格式:ppt
- 大小:302.50 KB
- 文档页数:81


第七讲 数组
一、授课内容
1、科目:C语言程序设计
2、授课内容:第七章 数组
3、授课类型:讲授
4、授课时间:10学时
5、主讲教师: 肖飞
二、学目的与要求
a) 掌握C语言数组的使用
一、 教材分析
1、 教材概述:本部分内容讲述C语言的数组的使用
2、 教学重点:C语言的数组的特点
3、 教学难点:熟练掌握数组编程
二、 教学设想
1、 教材处理设想:示例、例题、比喻、比较
2、 教学方法设想:讲授为主,辅以常识、实际操作指导
3、 教具运用设想:电子幻灯片
三、 教学过程
1、 导入: 为了使C语言能够更强地描述现实世界复杂数据对象的能力,C语言提供了构造数据类型,C语言提供的构造类型:数组类型、结构体类型、共用体类型。数组就是一种很重要的构造数据类型。数组是指具有相同类型的数据组成的序列,是有序集合。用统一的数组名来标识数组,序列中的一个数据称为数组的一个元素,数组元素所在的位置可以通过下标来表示,所以通过数组名和下标就能准确地表示一个数组元素。
讲授:(板书)
7.1 一维数组的定义和引用
先考虑两个问题:
1、 输入100个数并以与输入时相反的顺序输出这100个数
2、 输入100名学生的成绩,输出高于平均分的那些成绩。
一、一维数组的定义
一维数组的定义方式为:
类型说明符 数组名[常量表达式]
例:int a[10] (画图说明在内存中的存放形式和地址计算,并说明a的含义)
说明:
(1) 数组名的命名规则与变量相同
(2) 数组名后是用方括弧括起来的常量表达式,不能用圆括弧
(3) 常量表达式表示元素的个数,下标从0~n-1
(4) 常量表达式可以包括常量和符号常量,不能包含变量
如:int n; scanf(“%d”,&n); int a[n];时不合法的
(5) 数组元素在计算机内存中的存放方式。 下面时合法的定义:(可提问)
int m[4],n[5];
吕橙:第六章 数组
30 第六章 数组
一、 教案头:
教学内容 第六章 数组 5 学时
教学目标 认知目标(应知) 技能目标(应会)
了解数组的意义和基本概念
掌握数组的定义和元素的引用
掌握字符数组的定义、引用
常用字符串处理函数的使用 数组的应用数组元素的引用
掌握数组排序的三种方法
掌握字符串处理函数的使用技巧
情感目标(理解) 教学目标(重点难点)
培养学生自主探究学习、求真务实的品德
培养学生细致钻研的学风
培养学生努力拓展思维;理论与实际相结合的思维习惯 数组的排序
数组元素的增加、删除操作
二维数组概念的理解
字符数组的运算
内容概述 教材章节:
6.1 数组的概念
6.2 一维数组的定义和引用
6.3 二维数组的定义和引用
6.4 字符数组
教授内容:
本章先引入了数组概念,讲解为什么需要数组,然后讲解一维数组的定义和引用,再引入二维数组的定义和引用
本章最后还讲解了字符数组的定义和使用,以及字符串处理函数
能力训练及任务案例 任务6-1: 随机数反向显示
任务6-2: 求最值问题
任务6-3: 斐波那契
任务6-4: 行列转置
任务6-5: 求解二维数组中的最值元素
任务6-6:行列和
任务6-7: 输出一个字符串
任务6-8: 输出一个钻石图形
任务6-9: 单词统计
任务6-10:三个字符串中找最大者 任务6-11:数组的删除
任务6-12:数组的插入操作
任务6-13:比较排序
任务6-14:选择排序
任务6-15:冒泡排序
任务6-16:基本输入输出(续)
任务6-17:首字母变大写
任务6-18:密码
任务6-19:数组逆序
任务6-20:折半查找
参考资料 C程序设计教程,谭浩强 著,清华大学出版社,2007.07
C程序设计教程学习辅导,谭浩强 编著,清华大学出版社,2007.10
教学中心:
第7章 数组
第1次课:2学时
一、教学内容
1、一维数组的定义和引用
2、二维数组的定义和引用
二、教学目标
1.了解一维数组、二维数组的基本概念;
2.掌握数组的定义与引用;
3.掌握数组元素的引用
三、教学重点及难点
重点:数组的定义和引用
难点:数组的定义和引用
四、教学方法
多媒体教学,案例驱动,实例演示,提问。
五、教学过程设计
在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组
织起来。这些按序排列的同类数据元素的集合称为数组。在C语言中,数组属
于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基
本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数
组、字符数组、指针数组、结构数组等各种类别。本章介绍数值数组和字符数
组,其余的在以后各章陆续介绍。
7.1 一维数组的定义和引用
7.1.1 一维数组的定义方式
在C语言中使用数组必须先进行定义。
一维数组的定义方式为:类型说明符 数组名[常量表达式];
其中:类型说明符是任一种基本数据类型或构造数据类型;数组名是用户定义的数组标识符;方括号中的常量表达式表示数据元素的个数,也称为数组的长度。
对于数组类型说明应注意以下几点:
(1) 数组的类型实际上是指数组元素的取值类型。对于同一个数组,其所有元素的数据类型都是相同的。
(2) 数组名的书写规则应符合标识符的书写规定。
(3) 数组名不能与其它变量名相同。
(4) 方括号中常量表达式表示数组元素的个数,如a[5]表示数组a 有5 个元素。但是其下标从0 开始计算。因此5个元素分别为a[0],a[1],a[2],a[3],a[4]。
(5) 不能在方括号中用变量来表示元素的个数, 但是可以是符号常数或常量表达式。
(6) 允许在同一个类型说明中,说明多个数组和多个变量。
7.1.2 一维数组元素的引用
数组元素是组成数组的基本单元。数组元素也是一种变量, 其标识方法为
第七章 数组
一、一维数组
1、数组的概念
数组是一组具有相同类型的数据的集合。
2、一维数组的定义
类型名 数组名[整型常量表达式];
例如:int a[5];
通过上面语句定义数组后,便会为数组a开辟连续的5个存储单元,
每个存储单元存放一个整型数据。
注意事项:常量表达式用来表示数组的长度,不能为变量。
3、一维数组元素的引用
数组名[下标表达式]
例如:通过int a[5]定义一个数组后,a[0]、a[1]、a[2]、a[3]和a[4]便
是数组中的5个元素。
注意事项:
(1)数组元素的下标,必须是从0开始,到数组的最大长度减1。
(2)数组名代表数组的首地址,是一个地址常量,不能整体引用
数组里的所有元素。
(3)数组中的元素就是一个变量,所有适合该类型变量的操作同
样适用于数组。
4、一维数组的初始化
数组的初始化,就是在定义数组之后对数组元素赋初值。有以下几
种方式:
(1)int a[5]={1,2,3,4,5};
(2)int a[5]={1,2};
(3)int a[]={1,2,3,4,5};
(4)int a[5];a[0]=1;a[1]=2;a[2]=3;a[3]=4;a[4]=5; 三、二维数组
1、二维数组的定义
类型名 数组名[常量表达式1][常量表达式2]
例如:int a[2][3];
通过上面的语句便定义了一个2行3列的数组,数组中元素的个数
为:上标×下标=2×3=6。即为数组a开辟了6个连续的存储单元,每个存储单元可存放一个整型数。
注意事项:
(1)行下标和列下标都必须是常量表达式,不能为变量。
(2)二维数组可看作是一个特殊的一维数组,这个一维数组中的
每个元素又是一个一维数组。可参考以下图例进行讲解。
a[0]→a[0][0]a[0][1]a[0][2]
a[1]→a[1][0]a[1][1]a[1][2]
2、二维数组的引用
数组名[行下标][列下标];
例如,上面定义的数组a,则a[0][0]、a[0][1]、a[0][2]、a[1][0]、a[1]