C程序设计教案(第8章第3次).doc

PAGE PAGE 7 PAGE 7 周次:第 周 课次:第 课 授课时间:年 月 日 章节内容: 第8章 结构体、共用体和枚举类型 8.6共用体型 8.7枚举型 8.9用户自定义类型 教学目标: 通过本节学习,要求了共用体型、枚举型、用户自定类型数据的特点和实际运用,掌握共型体型的定义,共用型变量、数组的定义和引用,掌握枚举型、用户自定义类型的定义和实际应用;学习本章内容可以为今后学习数据结构中的其它链表创建和使用打下基础,同时也为以后学习面向对象编程打下基础。 教学重点: 共用体的特点和定义、共用体变量的定义和引用 枚举型的定义和引用 用户自定义类型的优点及定义形式 教学难点: 共用体型节约存储空间和共用体变量的赋值和引用 2)枚举型常量的值及引用 教学方法和授课手段 多媒体教室,电子课件,机房。 教学过程: 预备(复习):结构体的定以。(1分钟) 课前提问 :假如一个学生的信息表中包括学号、姓名、性别和一门课的成绩。而成绩通常又可采用两种表示方法:一种是五分制,采用的是整数形式;一种是百分制,采用的是浮点数形式。为了节约存储空间,应该怎么做呢?(5) 课程引入:介绍本课程的学习目的、主要学习内容和学习方法。(1分钟) 课程新授:(83分钟) 复习:结构体的定以及结构型指针变量 8.6共 用 型 例如:在一个函数的三个不同的程序段中分别使用了字符型变量c、整型变量?i、单精度型变量f、如果我们把它们定义结构型变量s,s中含有三个不同类型的成员,此时需要占用7个内存单元,如果我们把它们定义成一个共用型变量u,u中含有三个不同类型的成员。此时,给三个成同一共只分配4个内存单元,具体分析如图8-13: 定义为结构型 struct s1 {char ch; int i; float f; }s; ch i f 1 1 42 4 2 定义为共用型 union u1 {char ch; int i; float f; }u; fich f i ch 8.6.1共用型的定义 union共用型名 {数据类型1 成员名1; 数据类型2 成员名2; … 数据类型n 成员名n; }; 注意在右花括号的后面有一个语句结束符“分号”。 其中:共用型名是用户取的标识符。 数据类型通常是基本数据类型,也可以是结构型、共用型等其它数据类型。 成员名是用户取的标识符,用来标识所包含的成员名。 该定义语句定义了一个名为“共用型名”的共用型,该共用型中含有n个成员,每个成员都有确定的数据类型和名称。这些成员将占用相同的内存单元。 例如:为了节省内存,可以将不同的使用的三个数组定义在如下的一个共用型中,总计可节省300个单元: union c_i_f {char c1[100]; /*该成员占用100个单元*/ int i2[100]; /*该成员占用200个单元*/ float f3[100]; /*该成员占用400个单元*/ }; /*该共用型数据共用400个单元*/ 8.6.2共用型变量的定义 当定义了某个共用型后,就可以使用它来定义相应共用类型的变量、数组、指针等。 【例8.17】共用型变量和数组定义例。 8.6.3共用型变量的引用 1.共用型变量或数组元素成员的引用格式如下: 共用型变量名.成员名 其中“.”就是在结构型提到的成员运算符。 【例8.18】共用型变量成员的引用。 【例8.19】共用型的嵌套结构。 【例8.20】假如一个学生的信息表中包括学号、姓名、性别和一门课的成绩。而成绩通常又可采用两种表示方法:一种是五分制,采用的是整数形式;一种是百分制,采用的是浮点数形式。现要求编一程序,输入一个学生的信息并显示出来。 2、引用和指针变量的使用方法 共用型变量成员地址的引用和指针变量的使用格式如下: 指针变量=共用型变量名.成员名 存放共用型变量成员地址的指针变量类型必须和该成员的类型相同。 3.共用型变量地址的引用和指针变量的使用方法 指针变量=共用型变量名 存放共用型变量地址的指针变量类型必须和共用型变量是同一种共用型。 共用型和结构型相同,当某个共用型指针变量指向共用型变量时,共用型变量成员的引用方法也有两种: (*指针变量).成员名 指针变量-成员名 【例8.21】共用型数据地址的引用和指向共用型数据的指针变量使用例 8.7枚举型 8.7.1枚兴型的定义 枚举型需要用户自己定义,定义方法如下: enu

文档评论(0)

1亿VIP精品文档

相关文档