圳职业技术学院 Shenzhen Polytechnic 第八单元(2):结构体数组 教学内容 结构体数组 教学目标 应知 结构体数组的定义、成员的引用、初始化操作 应会 根据情况定义结构体数组,并引用 使用结构体数组统计学生成绩 难点 结构体数组成员的引用 教学方法 项目拓展结合实例教学法 教学过程 提问与复习 什么是结构体? 结构体类型变量如何定义?有几种方法?如何引用? 现场定义一个日期型结构体变量 定义结构体数组处理5个同学的成绩问题 定义一个结构体类型 student 定义一个 student类型的数组,stu[5] (3)使用循环语句输入5个学生的数据 计算每个学生的平均成绩 粤输出结果 以结构体数组作函数参数,将第二步的内容分到三个函数中实现 输入函数 void instu( struct student s[],intn) 求平均值函数 void avesta( struct student s[],intn) 输出函数 void outstu( struct student s[],intn) 4.以结构体数组作函数参数,编写函数 void sort( struct student s[],int n)根据平均值从大到小将学生成绩进行排序 「计算机系乌云高娃y82lcn,com第65页共83页
深 圳 职 业 技 术 学 院 Shenzhen Polytechnic 计算机系乌云高娃 Wygw@21cn.com 第 65 页 共 83 页 第八单元(2):结构体数组 教学内容 结构体数组 教学目标 应知 结构体数组的定义、成员的引用、初始化操作 应会 根据情况定义结构体数组,并引用 使用结构体数组统计学生成绩 难点 结构体数组成员的引用 教学方法 项目拓展结合实例教学法 教学过程 1. 提问与复习 什么是结构体? 结构体类型变量如何定义?有几种方法?如何引用? 现场定义一个日期型结构体变量 2. 定义结构体数组处理 5 个同学的成绩问题 定义一个结构体类型 student 定义一个 student 类型的数组,stu[5] (3) 使用循环语句输入 5 个学生的数据 计算每个学生的平均成绩 输出结果 3. 以结构体数组作函数参数,将第二步的内容分到三个函数中实现 输入函数 void instu(struct student s[],int n) 求平均值函数 void avestu(struct student s[],int n) 输出函数 void outstu(struct student s[],int n) 4. 以结构体数组作函数参数,编写函数 void sort(struct student s[],int n)根据平均值从大到小将学生成绩进行排序
圳职业技术学院 Shenzhen Polytechnic 学生容易出错的地方 结构体数组知考虑数组不考虑结构体特性 结构体数组的成员在输入输出时经常出错,比如&经常误用 问题与讨论 如果在结构体中再包含数组成员,将如何引用? 如果在结构体中再包含结构体,将如何引用? 小结(可由问题与讨论方式给出) 结构体数组的每一个数组元素,都是一个结构体类型数据,均包含结构体类型数据 的所有成员 构数组元素的引用需要考虑数组与成员两方面,数组名[下标].成员 厚结构数组初始化类似于数组初始化,可用{}分开各个元素 结构数组作函数参数同数组名作函数参数一样,是地址传递方式,形参结构变量中 各成员值的改变,影响实参结构变量的值 课后任务 定义一个图书结构体类型,包含书名、书价信息,定义用户函数进行数据的输入输 计算机系乌云高娃 Wygwl2lcn, com第66页共83页
深 圳 职 业 技 术 学 院 Shenzhen Polytechnic 计算机系乌云高娃 Wygw@21cn.com 第 66 页 共 83 页 学生容易出错的地方 结构体数组知考虑数组不考虑结构体特性 结构体数组的成员在输入输出时经常出错,比如&经常误用 问题与讨论 如果在结构体中再包含数组成员,将如何引用? 如果在结构体中再包含结构体,将如何引用? 小结(可由问题与讨论方式给出) 结构体数组的每一个数组元素,都是一个结构体类型数据,均包含结构体类型数据 的所有成员 结构数组元素的引用需要考虑数组与成员两方面,数组名[下标].成员 结构数组初始化类似于数组初始化,可用{}分开各个元素 结构数组作函数参数同数组名作函数参数一样,是地址传递方式,形参结构变量中 各成员值的改变,影响实参结构变量的值 课后任务 定义一个图书结构体类型,包含书名、书价信息,定义用户函数进行数据的输入输 出