- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 结构体与枚举 6.1 结构体类型变量的定义、初始化方法及引用 6.2 结构体数组 6.3 枚举类型 6.4 typedef 第6章 结构体与枚举 教学目标: 1 掌握结构体及其变量的定义、初始化方法及引用; 2 掌握枚举类型变量的定义及引用; 3了解 typedef 的作用 。 教学重点: (1) 结构体的基本概念、结构类型及变量的定义、结构数组; (2) 枚举类型的基本概念、 typedef 的基本概念. 教学难点: 枚举类型的使用 6.1 结构体类型变量的定义、初始化方法及引用 6.1.1 结构体类型变量的定义 6.1.2 结构体类型变量的初始化 6.1.3 结构体类型变量的引用 6.1.1 结构体变量的定义 一、结构体定义的一般形式: struct 结构体名 { 成员表列 } ; 成员表列的写法:类型标识符 成员名 1.这只是定义一种类型的方法,尚未定义变量。 2.struct –––关键词(保留字),表示定义一种结构体类型。 6.1.1 结构体变量的定义 二、结构变量的定义 有三种方法可用来定义结构体变量: 例: struct student { int num; char name[20]; char sex; int age; float score; char addr[30]; }; struct student x1, x2; 类型标识符 6.1.1 结构体变量的定义 2. 在定义结构体类型的同时定义变量: 定义形式 struct 结构体名 { 成员表列 } 变量名表列; 例:struct student { int num; char name[20]; char sex; int age; char addr[30]; } x1, x2; 6.1.1 结构体变量的定义 3. 直接定义结构类型变量 定义形式 struct {成员表列} 变量名表列; 不出现结构体类型名 如:struct { int num char name[20]; char sex; int age; char addr[30]; } x1, x2; 6.2 结构体数组 6.3枚举类型 1. 枚举类型的定义: “枚举”是指将变量所有可能的取值一一列举出来,变量的取值只限于列举出来的常量。 枚举类型的声明的一般形式如下 : 枚举类型名以及枚举常量为标识符,遵循标识符的取名规则。 在定义一个枚举类型时,定义了多个常量,供枚举类型变量取值,称此常量为枚举常量。当没给各枚举常量指定值时,其值依次默认为0、1、2、…;在定义枚举类型时,也可使用赋值号另行指定枚举常量的值。 6.3 枚举类型 枚举类型的定义: 例1: enum weekday { SUN, MON, TUE, WED, THU, FRI, SAT }; 定义了7个枚举常量以及枚举类型weekday。枚举常量具有默认的整数与之对应:SUN的值为0、MON的值为1、TUE为2、…、SAT为6。 例2: enum city{ Beijing,Shanghai,Tianjin=5,Chongqing}; 枚举常量Beijing的值为0,Shanghai的值为1,Tianjin的值指定为5。对于指定值后面的没有指定值的枚举常量,编译器会将前一个常量值加1(下一个整数)赋给它,所以Chongqing的值为6。 6.3 枚举类型 枚举类型的定义说明: 枚举类型定义了以后就可以使用枚举常量、使用用枚举类型来定义变量,定义枚举变量的方法与定义其它变量的方法一样。 例如: enum city city1, city2; city city1, city2; 用两种方法定义了city1、city2两个枚举类型的变量名。 枚举类型变量也可以在定义枚举类型的同时定义 例 enum city{ Beijing,Shanghai,Tianjin=5,Chongqing} city1, city2; 在定义枚举类型的同时定义枚举类型变量可以省略枚举类型名. 例如: enum { Beijing,Shanghai,Tianjin=5,Chongqing} city1, city2;
文档评论(0)