C语言程序设计教程第8章 结构体与共用体 ppt课件.ppt

C语言程序设计教程第8章 结构体与共用体 ppt课件.ppt

ID:59421491

大小:335.00 KB

页数:45页

时间:2020-09-19

C语言程序设计教程第8章 结构体与共用体 ppt课件.ppt_第1页
C语言程序设计教程第8章 结构体与共用体 ppt课件.ppt_第2页
C语言程序设计教程第8章 结构体与共用体 ppt课件.ppt_第3页
C语言程序设计教程第8章 结构体与共用体 ppt课件.ppt_第4页
C语言程序设计教程第8章 结构体与共用体 ppt课件.ppt_第5页
资源描述:

《C语言程序设计教程第8章 结构体与共用体 ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、学习目标掌握结构体类型的基本概念、结构体类型变量的定义及简单应用。基本掌握结构体类型变量参与函数调用的方法。了解链表,动态存储空间的申请与释放了解共用体的概念主要内容结构体类型的概念结构体数组结构体与函数链表共用体类型定义符typedef8.1结构体一.结构体类型的定义结构体类型是由不同类型的数据组合而成的。设通过学号、姓名、性别、年龄和入学成绩来描述一个学生:以标识符number(字符串)表示学号、name(字符串)表示姓名、sex(字符)表示性别、age(整型)表示年龄和score(整型)表示入学成绩。由这些不同类型的数据组合在一起,描述学生这一特定类型的对象

2、。称这种新的数据类型为结构体类型,根据其所描述的对象,将其命名为student结构体类型。定义结构体类型的格式:struct结构体类型名{结构体成员表列};例如:定义student结构体类型的语句:structstudent{charnumber[6];charname[20];charsex;intage;intscore;};其中,struct为定义结构体类型的关键字,student为所定义的结构体类型名。结构体类型名由用户命名,但须符合标识符的命名规则。花括号内所定义的变量称为结构体成员,它们构成了所定义的结构体类型的特征。结构体类型student的特征由结

3、构体成员number[]、name[]、sex、age和score共同描述。最后,以“;”表示定义结构体类型语句结束。二、结构体变量的定义和引用student是由用户定义的数据类型,与int、char、float等类型说明符一样,本身不能直接参与数据处理,必须通过定义student类型的变量,才能参与程序运行。定义结构体类型变量的格式为:struct结构体类型名变量名;例如,语句:structstudents1,s2;定义了二个student类型的变量s1和s2,并且由C编译程序为s1、s2分配存储单元,假定存储单元的起始地址为2000H,则s1的存储情况如图所示

4、:(转后)结构体变量s1在内存中的存储情况成员age占4字节成员number占6字节成员sex占1字节成员score占4字节成员name占20字节2000H2005H2006H2019H201AH201BH201EH201FH2022H定义结构体类型的又一种格式(定义结构体类型的同时定义结构体类型的变量)struct结构体类型名{结构体成员表列}变量名表列;例如:structstudent{charnumber[6];charname[20];charsex;intage;intscore;}s1,s2;在定义结构体类型变量的同时对其初始化对结构体类型变量的初始化

5、就是用初始化数据对结构体变量相应的成员作初始化。【例8-1】结构体变量的初始化。执行语句:structstudent{charnumber[6];charname[20];charsex;intage;intscore;}s1={"00001","Peter",'m',19,250},s2={"00002","Betty",'m',18,268};后,结构体变量s1、s2的成员被赋予相应的值。例如:s1的成员number[]的值为“00001”,age的值为19,结构体变量s2的成员name[]的值为"Betty"、score的值为268。【例8-2】假设学生的入

6、学成绩由语文成绩、数学成绩和外语成绩构成,分别以标识符score1、score2和score3表示,则可以将入学成绩定义为结构体类型score,并重新定义结构体类型student:structscore{intscore1;intscore2;intscore3;};structstudent{charnumber[6];charname[20];charsex;intage;structscorestscore;}s1={"00001","Peter",'m',19,{75,82,93}},s2={"00002","Betty",'m',18,{81,94,93

7、}};先定义结构体类型score结构体类型score的变量stscore是结构体类型student中的成员2.结构体变量的引用在C程序中,不允许引用结构体变量整体,只能通过结构体变量访问和引用其成员。引用结构体变量成员的格式:结构体变量名.成员名以【例8-1】中的结构体变量s1和s2为例:s1.name的值为字符串常量"Peter",s2.sex的值为字符常量'm'。再以【例8.2】中的结构体变量s1和s2为例:s1.stscore.score1的值为75,s2.stscore.score3的值为93。由s1.stscore访问s1的成员stscore,再由sts

8、core.

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

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

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