《结构体与共用体》ppt课件

《结构体与共用体》ppt课件

ID:27592791

大小:1.15 MB

页数:56页

时间:2018-12-01

《结构体与共用体》ppt课件_第1页
《结构体与共用体》ppt课件_第2页
《结构体与共用体》ppt课件_第3页
《结构体与共用体》ppt课件_第4页
《结构体与共用体》ppt课件_第5页
资源描述:

《《结构体与共用体》ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第10章结构体与共用体概述结构体共用体枚举类型2结构简介存储一个班级中5名学员的信息(学号、姓名、性别和成绩)问题:I.使用数组MaryJohnPeterRoseKateFMFMF01020304058978.56797.564解决方案:scorenumsexname不能建立数组间的关系II.使用多维数组MaryJohnPeterRoseKateFMFMF01020304058978.56797.564C语言不允许一个数组包含多种数据类型III.使用结构numnamesexscoreC语言引入了称为结构的数据存储方式“结构”是一种构造数据类型,它是由

2、若干数据项组合而成的复杂数据对象,这些数据项称为结构的成员。§10.1概述结构体(structure)是用户自定义的一种数据类型,包含若干个类型不同的数据项。用途:把不同类型的数据组合成一个整体。而分别用独立变量来表示不能反映它们之间的内在联系。例:定义一个结构体类型student,包含学号、姓名、性别、年龄、成绩、家庭地址。§10.1概述结构体类型的定义struct结构体名{类型标识符成员名1;类型标识符成员名2;……};struct是关键字,不能省略合法标识符可省略:无名结构体成员类型可以是基本类型或构造类型必须有分号5定义结构structstr

3、ucturename{datatypevariable1;datatypevariable2;...};结构成员{};结构名structstudentintnum;charname[20];charsex;定义结构floatscore;C语言中的有效数据类型6定义结构structstudent{intnum;charname[20];charsex;floatscore;};numnamesexstudent结构定义并不预留内存结构定义放置在程序的开始部分,位于头文件声明之后score结构定义仅描述了一个结构的形式。如果要在程序里使用结构,需要声明结

4、构变量。structdate{intyear;intmonth;intday;};structstd_info{intnum;charname[20];charsex;floatscore;charaddr[30];structdatebirthday;};日期结构体类型:由年、月、日三项组成学生信息结构类型:由学号、姓名、性别、成绩、地址和生日共6项组成可以改写成intyear,mongth,day;§10.1.1结构体变量的定义间接定义法:先定义结构体类型,后定义结构体变量structstudent{intnum;charname[20];cha

5、rsex;intage;floatscore;charaddr[30];};structstudentstu1,stu2;直接定义法:在定义结构类型的同时,定义结构变量structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}stu1,stu2;结构体类型名student可以不写structstudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}stu1,stu2;stu1:numn

6、amesexagescoreaddr22012430stu1在内存中共占字节数:2+20+1+2+4+30=59§10.1.3结构体变量的引用结构体变量的引用原则结构体变量不能整体输入输出,要通过成员运算符“.”,逐个访问其成员,且访问的格式为:结构体变量.成员structdate{intyear;intmonth;intday;};structdatebirth;printf("%d,%d,%d",birth);printf("%d,%d,%d",birth.year,birth.month,birth.day);“.”是成员运算符,优先级最

7、高如果某成员本身又是一个结构类型,则只能通过多级的分量运算,对最低一级的成员进行引用。结构变量.成员.子成员.….最低级子成员引用结构变量student中的birthday成员的格式分别为:student.birthday.yearstudent.birthday.monthstudent.birthday.day结构体变量的引用原则structstd_info{intnum;charname[20];charsex;floatscore;structdatebirthday;}student;structdate{intyear;intmonth

8、;intday;};numnamesexscorebirthdaystudent:对最低一级成员,可像同类型

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

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

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