- 1、本文档共37页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
程序设计基础8_结构体共用体和枚举类型(2015春)资料
【例8.8】枚举类型定义和使用。 #include stdio.h enum color{red,yellow,green,blue,whilt,black}co1,co2,co3; void main() { co1=blue; co2=red; co3=black; if (co3co1) printf(%d %d\n,co3,co1); else printf(%d %d\n,co3,co2); } * 8.4 利用typedef自定义类型 C语言允许用户使用自定义类型符typedef为已经存在的数据类型取“别名”,以“别名”代替已经存在的数据类型来定义变量。 格式:typedef?原数据类型名 新类型名; 说明:原数据类型名是已经存在的类型名,新类型名是用户自定义标识符。 例如:typedef int INTEGER; INTEGER a,b; 与 int a,b; 等价 * 8.4 利用typedef自定义类型 如果利用typedef定义指针、结构体等类型将带来很大的方便,不仅使程序书写简单而且使意义更为明确,因而增强了可读性。 例如: typedef struct st { char name[20];int age;char sex; }STUD; STUD body1,body2,*p; // 利用STUD定义变量,变量实际是st结构体类型 * 8.4 利用typedef自定义类型 注意: 1.用typedef可以声明各种类型名,但不能用来定义变量。 2.typedef只是对已经存在的数据类型增加一个类型名,并没有设计新的数据类型。 3.当不同源文件中用到同一类型数据(如数组、指针、结构体、共用体等)时,常用typedef声明一些数据类型,把它们单独放在一个文件中,然后在需要时用#include命令把它们包含进来。 * 8.6 本章小结 结构体定义允许嵌套,结构体的各成员都占有自己的内存空间,并同时存在,一个结构变量的的总长度等于所有成员长度之和。 共用体中,所有成员不能同时占用它的内存空间,不能同时存在,共用体变量的长度等于最长成员的长度。不能在定义共用体型变量时对其初始化。在引用共用体型变量时应注意当前存放在共用体型变量中的究竟是哪个成员。 枚举是一种基本数据类型,枚举变量的取值是有限的,枚举元素是常量。 * * 第8章 结构体与共用体 第8章 结构体与共用体 开 始 * 本学期课程计划 授课主要内容: 8 结构体与共用体 9 文件 10 链表 11 递推与递归 12 贪心法与动态规划 课时安排:24+8,共32学时 成绩构成:实验抽查40+机考30+在线考试30 平时成绩:0分,出勤、讨论等,- 5~ +5 * 结构体、共用体、枚举类型 主要内容 结构体定义和使用 共用体定义和使用 枚举类型的使用 * 本章OJ练习题目 * 8.1 结构体类型 结构体概念 一组逻辑相关但类型不同的变量的集合,也称为记录。 在程序里如何表示一个学生 * 学号 姓名 性别 出生日期 程序设计基础 英 语 高数 体育 1 令狐冲 男 1996.10.1 90 83 72 82 2 林平之 男 1995.12.2 78 92 88 78 3 岳灵珊 女 1997.3.1 89 72 98 66 4 任盈盈 女 1996.8.2 78 95 87 90 5 … … 6 … … * 数组的解决方案 存在问题 学号 姓名 性别 出生日期 程序设计基础 英 语 高数 体育 1 令狐冲 男 1996.10.1 90 83 72 82 2 林平之 男 1995.12.2 78 92 88 78 3 岳灵珊 女 1997.3.1 89 72 98 66 4 任盈盈 女 1996.8.2 78 95 87 90 5 … … 6 … … * 1 令狐冲 男 1996.10.1 90 83 72 82 2 林平之 男 1995.12.2 78 92 88 78 3 岳灵珊 女 1997.3.3 89 72 98 66 4 任莹莹 女 1996.8.2 78 95 87 90 希望的分配图 定义结构体类型 * 定义结构体变量 先定义结构体类型,再定义变量 在定义结构体类型的同时定义变量 直接定义结构体变量,缺省结构体类型名 * 用 typedef 给已有数据类型定义一个别名 用 typedef 并未定义新类型 别名与原有类型名是同义词 约定用大写字母表示 * 结构体变量初始化 结构体和
文档评论(0)