- 22
- 0
- 约1.2万字
- 约 43页
- 2017-08-20 发布于广东
- 举报
结构体中嵌套共用体 例8.6 一个班体育课成绩,男生测验1500米成绩为x分x秒,女生测验柔韧性(分A、B、C、D、E)和俯卧撑次数,将测试数据放在一张表中,表中包括学号、姓名、性别和体育成绩。 分析:结构体中嵌套共用体 struct student { char num[7]; char name[10]; char sex; /*体育成绩*/ }; struct student stu[N]; struct boy { int m; /*分钟*/ float s; /*秒*/ }; struct girl { char f; /*柔韧性*/ int n; /*俯卧撑*/ }; union { struct boy ms; struct girl fs; }score; **结构体与共用体的比较** 定义形式相似,但是它们的含义不同。 结构体是将多个不同类型的数据组合成一个整体进行存储与管理。 共用体则是使多个不同类型的数据使用同一存储空间进行存储。 存储空间的分配方式不同 结构体变量所占内存长度是各个成员占的内存长度之和, 其每个成员均有自己的存储空间。 共用体变量所占的内存长度等于最长的成员的长度,任何时候,共用体变量只能存放一个成员。 8.6 枚举类型 枚举是一个具有有限个整型符号常量的集合,这些整型符号常量称为枚举常量。每个枚举类型都必须进行类型的定义,定义时必须将其所有的枚举常量一一列举,以便限定此枚举类型变量的取值范围。 枚举类型的定义 一般形式: enum 枚举名 { 枚举常量取值表 }; enum是枚举类型定义的关键字,与其后的类型标识符共同组成枚举类型名。 每个枚举常量由程序员自定义,不能重名。 每个枚举常量都有一个序号,从0起编号。(可改变) enum weekday {sun,mon,tue,wed,thu,fri,sat}; enum weekday {sun=7,mon=1,tue,wed,thu,fri,sat}; 说明: 例如: enum weekday { Sun, Mon, Tue, Wed, Thu, Fri, Sat }; 1. 隐式定义: 按照类型定义时枚举常量列举的顺序分别代表0、1、2、……等整型值。 0 1 2 3 4 5 6 在枚举类型中,每个枚举常量都代表一个整型值。在定义枚举类型的同时可隐式或显式地定义枚举常量所代表的值。 例如: enum op { plus=43,minus=45,multiply=42,divide=47 }; enum workday { Mon=1,Tue,Wed,Thu,Fri }; 2. 显式定义: 在定义类型的同时指定枚举常量的值,其中如 有未指定值的枚举常量,则根据前面的枚举常量的 值依次递增1。 2 3 4 5 =的作用是定义枚举常量的序号,并非赋值操作 例如: enum flag fg; enum color1 c1; enum color2 { blank,brown,yellow,white }c2; enum { lightblue,lightgreen,lightred }c3; 3. 枚举变量的定义 枚举类型变量定义的三种形式: ① enum 枚举名 枚举变量名表; ② enum 枚举名 {枚举常量取值表}枚举变量表; ③ enum {枚举常量取值表}枚举变量表; ⑵ 赋值运算 fg=true; c1=red; c2=yellow; c3=lightblue; c2=2; c2=(enum color2)2; 4. 枚举数据的运算 ⑴ 用sizeof运算符计算枚举变量所占内存空间 枚举变量中存放的是整型值,每个枚举变量占用2个字节 〤 √ ⑶ 关系运算 truefalse SunSat 真(1) 假(0) 按枚举类型数据所代表的序号大小进行比较 在C系统中,不能直接对枚举数据进行输入和输出。 由于枚举变量可以作为整型变量处理,所以可以通过间接方法输入输出枚举变量的值。 ⑵ 枚举变量的输出 ⑴ 枚举变量的输入 枚举变量作为整型变量进行输入。 例如: scanf(%d,fg); 1 含义
您可能关注的文档
- C语言程序设计(第二版) 教学课件 作者 李丽娟 马淑萍主编 第9章_结构.ppt
- C语言程序设计(第二版) 教学课件 作者 李丽娟 马淑萍主编 第10章_文件.PPT
- C语言程序设计(第二版) 教学课件 作者 李丽娟 马淑萍主编 第11章 位运算.ppt
- C语言程序设计(第二版) 教学课件 作者 林小茶 C_ch1.ppt
- C语言程序设计(第二版) 教学课件 作者 林小茶 C_ch3.ppt
- C语言程序设计(第二版) 教学课件 作者 林小茶 C_ch4.ppt
- C语言程序设计(第二版) 教学课件 作者 林小茶 C_ch5.ppt
- C语言程序设计(第二版) 教学课件 作者 林小茶 C_ch6.ppt
- C语言程序设计(第二版) 教学课件 作者 林小茶 C_ch7.ppt
- C语言程序设计(第二版) 教学课件 作者 林小茶 C_ch8.ppt
最近下载
- 浙江省金华市2023年中考数学试卷 .pdf VIP
- 英语专四新题型选词填空做题技巧.ppt VIP
- 2026年广东省普通高中学业水平合格性考试英语试卷含答案.pdf VIP
- 英菲尼迪QX70说明书|Infiniti QX70 Owner's Manual.pdf
- 光合作用的原理和应用课件【新教材】人教版高中生物必修一.pptx VIP
- 概率论与数理统计教学教案.doc VIP
- 统编版(2024)七年级上册道德与法治期末复习模拟试卷 3套(含答案).pdf
- 倾斜摄影三维建模项目设计方案.pdf VIP
- 脑胶质瘤诊疗规范2025年版.docx VIP
- 2025年海南省中考化学真题(含答案).pdf
原创力文档

文档评论(0)