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
您可能关注的文档
- 《C语言程序设计》课程.doc
- 《C语言程序设计案例教程(第四版)》全套章节习题答案.docx
- 《C语言程序设计案例教程(第四版)》章节习题答案第1章基本知识.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第2章算法.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第4章.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第5章.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第6章.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第7章.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第8章结构体、共用体和枚举类型.doc
- 《C语言程序设计案例教程(第四版)》章节习题答案第9章位运算.doc
最近下载
- 2025年陕西三校生单招试题真题及答案.doc VIP
- DB34_T3465-2019《连续梁桥整体同步顶升技术规程》.docx VIP
- 現代詩歌朗誦教學與訓練.ppt VIP
- 現代詩創作訓練-台灣首府大學.ppt VIP
- 2025年语文重庆春招试题及答案.doc VIP
- 部编版初中语文课本里现代文中重要的中外作家及作品等文学常识汇总(共六册).pdf VIP
- 最新大学考试复习资料-成本会计试题及答案.doc VIP
- 英国石油公司(BP)标准 GIS 62-021 - EEMUA 182 Integral Block and Bleed Valve Manifolds - 0900a866800dbfa8.pdf
- 2025年度民主生活会带头强化政治忠诚、提高政治能力(五个带头)问题原因查摆剖析整改措施8篇.docx VIP
- 2026部编人教版小学五年级语文下册课内阅读理解专项练习(附答案).pdf
原创力文档

文档评论(0)