- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c014结构体和公用体.ppt
第14讲 结构体和共用体 数学计算机科学系 第14讲 结构体 本讲主要内容 一、结构体 1. 结构体类型 2. 结构体变量 3. 结构体数组 4. 结构体指针 二、共用体 一、结构体类型 结构体类型概述 表13-1 学生信息表 学 号 姓 名 性别 年龄 成绩 地 址 990101 Liujia M 19 87.5 shanghai 990102 Wangkai M 18 89.5 Beijing 990103 Xiaohua F 20 81.0 Qingdao 990104 Zhangli F 19 82.0 Guangzhou 990105 wangfeng M 20 88.5 nanchang 表中的每一行反映了一个学生的综合信息,是一个学生的整体数据。每一个数据,都由多个数据项组成,包括学生的学号、姓名、性别、年龄、成绩、地址等,各数据项的数据类型也不尽相同。要表示这样一个组合数据,仅靠单一的任何一种数据类型,如整型、实型、数组等,都是不能实现的。 一、结构体类型 “结构体”技术的基本过程: ⑴ 针对具体的组合数据,定义专门的结构体数据类型; ⑵ 使用定义好的数据类型,定义要使用的结构体变量; ⑶ 使用定义的结构体变量表示有关数据。 一、结构体类型 结构体类型的定义 定义结构体类型的一般格式如下: Struct 结构体名 { 成员表 }; 如右边是对学生组合 数据的结构体类型 定义: struct student { int num; /* 学号 */ char name[20]; /* 姓名 */ char sex; /* 性别 */ int age; /* 年龄 */ float score; /* 成绩 */ char addr[30]; /* 地址 */ }; 一、结构体类型 结构体类型定义说明 ⑴ “结构体名”是用户定义的结 构体的名字,在以后定义结构体变 量时,使用该名字进行类型标识。 ⑵ “成员表”是对结构体数据中每一个数据项的变量说明,其格式与说明一个变量的一般格式相同,如下: 数据类型名 成员名; ⑶ “struct”是关键字,“struct 结构体名”是结构体类型标识符,在类型定义和类型使用时“struct”都不能省略。 ⑷ 结构体名称可以省略,此时定义的结构称为无名结构。 ⑸ 整个定义作为一个完整的语句用分号结束。 ⑹ 结构体成员名允许和程序中的其他变量同名,二者不会混淆。 struct student { int num; /* 学号 */ char name[20]; /* 姓名 */ char sex; /* 性别 */ int age; /* 年龄 */ float score; /* 成绩 */ char addr[30]; /* 地址 */ }; 一、结构体类型 结构体的嵌套 C语言结构体成员的数据类型既可以是简单的数据类型,也可以是复杂的数据类型,成员也可以是一个结构体。当结构体的成员又是结构体时,称为结构体的嵌套。如右图 struct stud结构如下表所示。 struct date { int month; int day; int year; }; struct stud { int num; char name[20]; char sex; int age; struct date birthday; char addr[30]; }stud1,stud2; num name sex age birthday addr month day year 二、结构体变量 结构体变量定义 ⑴ 先定义结构体类型, 再定义结构体变量。 一般格式如下: struct 结构体名称 结构变量名; 如上面已定义了一个结构体类型student,可以用它来定义变量: struct student student1,student2; struct student { int num; /* 学号 */ char name[20]; /* 姓名 */ char sex; /* 性别 */ int age; /* 年龄 */ float score; /* 成绩 */ char addr[30]; /* 地址 */ }; struct student student1,student2; 二、结构体变量 结构体变量定义 ⑵ 在定义结
您可能关注的文档
- 2015年医学高级职称考试神经外科学练习题及答案.doc
- 2015年绵阳市专业技术人员公共科目试题(答案已经订正).doc
- 2015年绵阳市公需科目参考答案.doc
- 2015年职称外语报考须知.doc
- 2015年高考压轴冲刺卷 山东卷(一).doc
- 20讲法治文化建设.doc
- 211人口增长模式.ppt
- 21世纪的文明是生态文明.doc
- 2222 申学婵 毕业论.doc
- 25岁之前必做的抗氧化护理.doc
- 某区纪委书记年度民主生活会“四个带头”个人对照检查材料.docx
- 某县纪委监委2024年工作总结及2025年工作计划.docx
- 某市场监督管理局2024年第四季度意识形态领域风险分析研判报告.docx
- 县委书记履行全面从严治党“第一责任人”职责情况汇报.docx
- 税务局党委书记2024年抓党建工作述职报告.docx
- 某市税务局副局长202X年第一季度“一岗双责”履行情况报告.docx
- 副县长在全县元旦春节前后安全生产和消防安全工作部署会议上的讲话.docx
- 某市委书记个人述职报告.docx
- 某县长在县委常委班子年度民主生活会个人对照检查材料1.docx
- 某县长在县委常委班子年度民主生活会个人对照检查材料.docx
文档评论(0)