第九章_结构体和共用体.pptVIP

  1. 1、本文档共93页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第九章_结构体和共用体

C语言程序设计 第9章 结构体与共用体 定义结构体类型 定义结构体类型变量 引用结构体变量 给结构体变量赋值 结构体的嵌套 结构体数组 指向结构体类型变量的指针 共用体数据类型的定义形式和引用方 枚举三种数据类型的定义形式 问题与提问 C语言的主要数据类型有哪些? 如何表示一组有内在关系的数据? 概述 有时需要将不同类型的数据组合成一个有机的整体,以便于引用。这些组合在一个整体中的数据是互相联系的。 例如,一个学生的学号、姓名、性别、年龄、成绩、家庭地址等项。这些项都与某一学生相联系。 概述 仔细观察以下表格内容,分析其中所含数据的类型: 假设程序中要用到上图所表示的数据结构,但是C语言没有提供这种现成的数据类型,因此用户必须要在程序中建立所需的结构体类型。 如果此集合内的数据是由不同数据类型的数据组织在一起来构成(如学生成绩单),则这个集合可由C语言的结构体类型描述 结构体中的每个数据被称为该结构体的结构体成员,且这些成员可以有相同的或不同的数据类型 针对不同的实际问题,可以建立不同的结构体类型,即不同的结构体类型内部,由不同的数据成员组成 结构体类型说明 每个结构体类型必须先说明,后使用; 结构体类型说明是对结构体内部构成形式进行描述,包括对其结构体成员的指定,以及每个成员所具有的数据类型的描述。 结构体类型的说明: struct 结构体名 { 类型名 成员名; 类型名 成员名; }; 成绩表: struct score { char grade[20]; /* 班级*/ long number; /* 学号*/ char name[20]; /* 姓名*/ float os; /* 操作系统*/ float datastru; /* 数据结构*/ float compnet; /* 网络工程 */ } ; 例如: struct student {int num; char name[20]; char sex; int age; float score; char addr[30]; }; 一旦通过结构体类型说明语句定义了一个结构体类型,则这个结构体类型的大小也就被固定下来。就如同一个普通整形类型int的大小是占用两个字节的存储单元一样。 一个结构体类型的大小是由其内部所含的各种数据类型的大小之和来决定 如 struct examp { float aver; char name[10]; int s[3]; } 则它的大小是:4+10+3*2 =20 结构体类型说明 struct addr { char name[20]; char departmt[30]; /* 部门 */ char address[30]; /* 住址 */ long box; /* 邮编 */ double phone; /* 电话号码 */ char email[30]; /* E-mail */ }; 定义结构体类型 结构体类型并不是只有一种,而是可以设计出许多种结构体类型 定义结构体类型练习 定义结构体类型练习 结构体类型的变量定义 1)先有了结构体类型,就可以定义该结构体类型变量。        定义结构体类型变量 结构体变量定义 例如: struct achievement /* 定义学生结构体类型 */ { char name[20]; /* 学生姓名 */   char sex; /* 性别 */ double num; /* 学号 */ float score[3]; /* 三门课程的考试成绩 */ }; struct achievement ZhangJR , Li

文档评论(0)

junjun37473 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档