《第7章自定义数据类型》-公开·课件设计.pptVIP

《第7章自定义数据类型》-公开·课件设计.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 自定义数据类型 7.1 结构体类型 7.2 共用体 7.3 枚举类型 7.4 用typedef声明类型 7.1 结构体类型 7.1.1 结构体概述 C++的内部数据类型只有简单的整数和浮点。实际问题中涉及大量的复合数据,这些复合数据可用结构型struct来描述。 比如日期由年、月、日三个整型数据量表示,可用结构描述为: struct Date{ int year; int month; int day; }; 又如学生的信息包括学号、姓名、性别、年龄,可用如下结构描述: struct Student { int sno; string name; bool sex; }; 定义结构类型的格式 struct 结构类型名 { 类型名 变量1; 类型名 变量2; … }; 7.1.2 结构体类型变量的定义方法及其初始化 1. 定义结构体类型变量的方法 Student s1; Date d; //在声明类型的同时定义变量,不常用 struct Student { int sno; string name; bool sex; } s; 2. 结构体变量的初始化 Student s={20,sky,true}; 7.1.3 结构体变量的引用 在定义了结构体变量以后,可以引用这个变量。 ①可以将一个结构体变量的值赋给另一个具有相同结构的结构体变量。 Student s1={20,sky,true},s2; s2=s1; ②可以引用一个结构体变量中的一个成员的值。 couts2.nameendl; ③如果成员本身也是一个结构体类型,则要用若干个成员运算符,一级一级地找到最低一级的成员。 #include iostream using namespace std; struct Father { string name; int tel; }; struct Student { int sno; string name; bool sex; Father father; //成员也可以是一个结构体变量 }; int main() { Student s1={20,sky,true,{wang,123456}},s2; couts1.father.nameendl; return 0; } ④不能将一个结构体变量作为一个整体进行输入和输出。 Sudent s; s.sno=123; s.name=zhang; s.sex=1; couts; //× couts.sno s.nameendl; //√ s={25,wang,0}; //? ⑤对结构体变量的成员可以像普通变量一样进行各种运算(根据其类型决定可以进行的运算种类) Student s={20,sky,true}; ++s.sno; 7.1.4 结构体数组 结构体数组:每个数组元素都是一个结构体类型的数据,它们都分别包括各个成员项。 #include iostream using namespace std; struct Student { int sno; string name; bool sex; }; int main() { Student s[3]={{20,sky,1},{21,Li,0},{22,Zhang,0}}; couts[2].nameendl; return 0; } 结构体数组应用举例 对候选人得票的统计程序。设有3个候选人,最终只能有1人当选为领导。今有10个人参加投票,从键盘先后输入这10个人所投的候选人的名字,要求最后输出这3个候选人的得票结果。 #include iostream #include cstring using namespace std; struct Person //声明结构体类型Person { char name[20]; int count; }; int main( ) { Person leader[3]={{Li,0},{Zhang,0},{Wang,0}}; char leader_name[20]; //leader_name为投票人所选的人的姓名 for (int i=0;i10;i++) //输入10张票上所写的姓名,并计数 { cinleader_name; for (int j=0;j3;j++) //将票上姓名与3个候选人的姓名比较 if (strcmp(l

文档评论(0)

花好月圆 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档