C语言第9章结构体、共用体、枚举

C语言第9章结构体、共用体、枚举

ID:45067527

大小:4.83 MB

页数:69页

时间:2019-11-09

C语言第9章结构体、共用体、枚举_第1页
C语言第9章结构体、共用体、枚举_第2页
C语言第9章结构体、共用体、枚举_第3页
C语言第9章结构体、共用体、枚举_第4页
C语言第9章结构体、共用体、枚举_第5页
资源描述:

《C语言第9章结构体、共用体、枚举》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、湖南省普通高等学校省级精品课程《C语言程序设计》第九章结构体、共用体、枚举湖南工业大学计算机与通信学院目录问题提出结构体共用体枚举类型程序应用综合举例总结湖南工业大学计算机与通信学院学习目标、重点、难点*★什么是结构?结构与数组有什么差别?★有几种结构的定义形式,它们之间有什么不同?什么是结构的嵌套?★什么是结构变量和结构成员变量,如何引用结构成员变量?结构变量如何作为函数参数使用?★什么是结构数组,如何定义和使用结构数组?★什么是结构指针,它如何实现对结构分量的操作?★*结构指针是如何作为函数的参数的?*如

2、何建立单向链表并实现插入、删除以及查找操作?什么是共用体?共用体与结构体有什么区别?什么是枚举类型?枚举类型数据如何引用?湖南工业大学计算机与通信学院9.1问题的提出v在程序里表示一个人(学号、姓名、各科成绩、……)?v想表示多个人呢?怎么解决呢?1.使用数组2.使用多维数组01charstudentId张[3三0][10]={{"01"}8,8{C".502语"},言{"0不3"}允,{"许7084"一}};个数组86charstude0n1tName0[320][20]=0{3{"张三"包}0,4含{"多

3、李四种…"}数,{"据王五类"}型,{"刘娟"}};02floatscoreCo李mp四uter[30]={88.856,8.56.5,75,68.5};8892张三李四王五刘娟…floatscoreEnglish[30]={78,75.5,65.5,82};0388.5王五86.5757568.5…8285floatscoreMath[30]={78,75.5,65,82.5};0478刘娟888268.572…7278…86…9285…78………湖南工业大学计算机与通信学院希望的内存分配图湖南工业大学计算

4、机与通信学院9.1问题的提出又如,在学生信息管理系统中填加个属性:是否是中共党员,如果不是属性的值为0(int),如果是属性的值为入党的时间(char)。在某一时间,属性只有一种值,而且数据类型不同,这种情况用什么数据类型描述呢?共用体是一种同一存储区域由不同类型变量共享的数据类型,它提供—种方法能在同一存储区中操作不同类型的数据,也就是说共用体采用的是覆盖存储技术,准许不同类型数据互相覆盖。湖南工业大学计算机与通信学院9.1问题的提出另外,在实际应用中,有些变量的取值范围是有限的,仅可能只有几个值。一个星期

5、7天,一一副扑克有4种花色,每年12个月一花色有13张牌湖南工业大学计算机与通信学院从基本数据类型、复合数据类型到抽象数据类型v计算机本身是没有数据类型的概念的n内存里存储的内容,你认为它代表什么,它就代表什么v高级语言设计了基本数据类型:整型、浮点型、字符型等。不同的语言也会定义不同的基本类型n基本数据类型并不能方便地解决所有问题v复合数据类型是基本数据类型迭代派生而来n典型的代表就是“结构”,数组、指针也可算作此类v抽象数据类型(ADT)在复合数据类型的基础上增加了对数据的操作v抽象数据类型进而进化为“类

6、”n这是一个跨时代的进步湖南工业大学计算机与通信学院9.2结构体9.2.1结构体类型上述学生基本信息(学号、姓名、各科成绩)的例子,C语言程序可用结构体定义为:C语言中的有效数据类型结构名structnode{结构成员charid[20];charname[20];floatscore[3];};湖南工业大学计算机与通信学院9.2.1结构体类型合法标识符结构体类型的定义可省略:无名结构体struct结构体名{struct是关键字,类型标识符成员名1;成员类型可以是基本不能省略类型或构造类型类型标识符成员名2;

7、……};必须有分号湖南工业大学计算机与通信学院9.2.1结构体类型structnode{charid[20];nodecharname[20];floatscore[3];idnamescore};v结构定义并不预留内存v结构定义放置在程序的开始部分,位于头文件声明之后v结构定义仅描述了一个结构的形式。如果要在程序里使用结构,需要声明结构变量。湖南工业大学计算机与通信学院嵌套结构structaddress{姓年通信地址联系charcity[10];名龄电话charstreet[20];城街门邮intcode;

8、市道牌编号intzip;};在定义嵌套的结构类型structnest_friendslist{时,必须先定义成员的charname[10];结构类型,再定义主结intage;构类型。structaddressaddr;chartelephone[13];};湖南工业大学计算机与通信学院9.2.2结构体类型变量1.结构体类型变量的定义结构体变量的定义有以下几种形式:单独定义:直接定义:先定义结构体类型

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。