- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章 结构体、共用体与枚举类型 本章要求 为什么要引入结构体,结构体与数组有什么本质不同? 如何定义结构体,有几种定义形式? 结构体变量与结构体指针变量有何区别,它们如何各自引用结构体成员? 结构体数据如何作为函数的参数? 为什么要引入链表,如何利用链表对内存进行动态管理? 本章重点 结构体变量的定义和使用 链表的概念 本章难点 动态链表的常见操作 第9章 结构体、共用体与枚举类型 9.1 问题的提出与示例 9.2 结构体类型的说明与变量定义 9.3 结构体指针变量 9.4 结构体数组 9.5结构体与函数 9.6 链表与动态内存管理 9.7 结构体综合应用举例 9.1 问题的提出与示例 9.1.1 结构体概述 9.1 问题的提出与示例 下表是一张100个学生成绩管理表,要求计算并打印出每个学生的平均成绩。 9.1 问题的提出与示例 如果按照以前学过的数组方法,可以定义如下的多个数组并赋初值如下: int stu_id[100]={,; /*定义一维数组存放每个学生的学号*/ char stu_name[100][8]={“陈云”, “沈栋栋”, “易婷婷”, “谢浩杰”, “郑强”}; /*定义字符串数组存放每个学生的姓名*/ char stu_sex[100] ={‘m’ , ‘m’ ,‘f’ ‘m’, ‘m’}; /*定义字符数组存放每个学生的性别*/ int stu_year[100]={1989,1989,1990,1988,1988}; /*定义一维数组存放每个学生的出生年份*/ …….. 9.1问题的提出与示例 说明: 使用结构体数据,可将一个学生的数据有机组合起来,例中的stu是个结构体数组,stu[i]表第i个学生的数组,stu[i].num表第i个学生的学号,stu[i].name表第i个学生的姓名等。 结构体的每一个成员都是通过其名字来引用,引用形式如下: 结构体变量名. 成员名 结构体的引入为处理复杂的数据结构提供了有力的手段(如链表等),也为函数间传递一组不同类型的数据提供了方便。特别是对于数据结构比较复杂的大型程序提供了方便。 9.2结构体类型的说明与变量定义 9.2.1 结构体的声明 定义结构体类型的一般形式: struct 结构体名 { 结构成员1; 结构成员2; …… 结构成员n; }; 其中,struct为结构体定义的关键字,不能省略。结构体名由用户给定,即是定义的结构体类型名。用两个花括号括住的内容是该结构体中的各个成员,每个成员又有自己的数据类型,它们可以是整型、实型、字符型、指针或结构类型等,它们都应进行类型说明。 9.2结构体类型的说明与变量定义 有关结构体的几点说明: 结构体类型的定义只是说明了一种结构体的组织形式,在编译时并不为它分配存储空间。只是在定义结构体类型变量后,才为变量按照其组织形式分配内存空间。 结构体的成员可以是简单变量、数组、指针,还可以是另一个已定义的结构体或共用体变量。当定义一个结构体的成员又是一个结构体类型,这称为结构体的嵌套定义。 struct date { int year; int month; int day; }; 9.2结构体类型的说明与变量定义 结构体定义可以在函数内部,也可在函数外部。在函数内部定义的结构体,只有在函数内部使用,在函数外部定义的结构体,从定义点起到源文件尾之间的所有函数都可使用。 结构体成员的名字可以同程序中的其他变量名相同,两者的意义不同,不会相混。 9.2结构体类型的说明与变量定义 9.2.2 结构体变量定义 先说明结构体类型,再定义变量 9.2结构体类型的说明与变量定义 在声明类型的同时定义变量 struct 结构体名 { 成员列表; }变量名表列; struct student { int num; char name[20]; char sex; int age; float score; }stu1,stu2; 9.2 结构体类型的说明与变量定义 直接定义结构类型变量 struct { 成员表列; }变量名表列; struct { int num; char name[20]; char sex; int age; float score; }stu1,stu2; 9.2 结构体类型的说明与变量定义 对结构体变量,系统要为其分配存储空间。一个结构
您可能关注的文档
- 《第6章接触交代矿床》-公开课件(精选).ppt
- 《第7课卡哇伊》-公开课件(精选).ppt
- 《第7课南方经济的发展》-公开课件(精选).ppt
- 《第7章光学零件毛坯的成型》-公开课件(精选).ppt
- 《第7章梁的强度计算》-公开课件(精选).ppt
- 《第7章螺纹及标准件》-公开课件(精选).ppt
- 《第7章透镜应用和图框裁剪》-公开课件(精选).ppt
- 《第7章消隐》-公开课件(精选).ppt
- 《第7章有效市场》-公开课件(精选).ppt
- 《第7章铸铁--20090316》-公开课件(精选).ppt
- 内容复利:从爆款到资产——让旧内容持续裂变新流量与精准粉丝的实战指南.docx
- 氢能产业链核心环节拆解:制储运加4大环节5项卡脖子技术突破点与7家值得关注的潜力公司.docx
- 算法潜规则:3个被低估的推荐信号5个让系统秒推的发布姿势7个延长生命周期的神操作.docx
- AI赋能新能源电站:运维场景核心算法与降本实例全景解析.docx
- 全球碳中和博弈全景解析:中美欧日新能源战略路径技术壁垒与市场机遇.docx
- 从流量民工到内容老板:转变3个思维用好4个杠杆搭建你的被动收入系统.docx
- 视频号广场流量截流术:3个必蹭热点类型5个高赞封面套路引爆中老年市场.docx
- 月更30条视频的秘诀:团队批量生产SOP实战指南——从灵感到发布的全流程自动化搭建.docx
- 自媒体抗衰艺术:流量保鲜的底层逻辑——3大人设焕新策略与5大内容微创新方向.docx
- 公众号打开率翻倍的歪门邪道:4种反直觉标题6种上头版式8种勾魂结尾.docx
最近下载
- 关于调整农村养老保险个人帐户计息标准的通知.pdf VIP
- GB45673-2025《危险化学品企业安全生产标准化通用规范》解读.pptx
- 2025年产前筛查诊断人员资质考试历年参考题库及答案.docx VIP
- 2025年银行审计岗考试题及答案.doc VIP
- 低压挤包绝缘电力电缆产品检验规范.docx VIP
- 药品经营管理—药品标签与说明书管理(药事管理与法规课件).pptx
- 第3课 中华文明的起源【学案】.pdf VIP
- 中国国家标准 GB/T 17219-2025生活饮用水输配水设备、防护材料及水处理材料卫生安全评价.pdf
- 生物医用材料生物相容性及其评价方法.pptx VIP
- 数学建模:第二章 古典模型.ppt
原创力文档


文档评论(0)