- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
正版课件 内容可修改
5.3结构体
主讲:廖智蓉
项目5简易的通讯录管理
结构体
问题导入
学号
姓名
高等数学
C语言
英语
总分
101
张圣丹
75
86
77
232
102
徐丽萍
92
88
90
270
103
周京京
79
88
68
225
104
申洪伟
83
93
82
258
105
胡瀚文
76
87
78
241
106
张腾伟
68
80
88
226
107
於斌
64
98
78
222
108
孙盛兵
76
84
60
220
109
任高翔
53
87
77
197
110
方辘恒
88
80
82
238
问题解决
分析:一个学生的信息包含了学号、姓名、3门课成绩、总分。分别定义简单变量难以反映它们之间的联系
将它们组成一个组合项,其中可以包含若干个类型不同的数据项
结构体类型:将不同类型的数据进行组合的一种用户自定义的类型。
关键技术:结构体(记录)
结构体类型的定义
结构体类型定义的一般形式为:
struct 结构体名
{
成员列表
};
结构体类型的说明
(1)struct是声名结构体类型时必须使用的关键字,不能省略。
(2)struct 结构体名是一个类型名,它的功能和基本数据类型有着同样的地位和作用,都可以用来定义变量的类型,只不过这种类型是要用户自己制定而已。
(3)成员表由若干个成员组成,每个成员都是该结构的一个组成部分。对每个成员也必须作类型说明,其形式为:类型说明符 成员名;
(4)大括号和外面的分号都不能省略。
问题实现
struct student{int num;char name[20];float math;float c_language;float english;float sum;};
关键字不能省略
结构体名,和标准类型名一样可以定义变量
成员列表,
每个成员又称分量或域.成员名定名规则与变量同
作为语句,必须以分号结束
案例结构体类型定义的实现:
结构体变量的定义
(1)先声明结构体类型再定义结构体变量。
struct 结构体名
{
成员表列;
};
[struct] 结构体名 变量名表列;
struct student{int num;char name[20];float math;float c_language;float english;float sum;};
struct student x,y;
struct student{int num;char name[20];float math;float c_language;float english;float sum;};
student x,y;
结构体变量的定义
(2)在声明类型的同时定义变量
struct [结构体名]
{
成员表列;
}变量名表列;
struct student{int num;char name[20];float math;float c_language;float english;float sum;} x,y;
struct{int num;char name[20];float math;float c_language;float english;float sum;}x,y;
说明
1、结构体变量:能够赋值、存取或运算,编译时,分配空间
结构体类型:不能赋值、存取或运算,编译时,不分配空间
2、成员可以是一个结构体变量。
struct student{int num;char name[20];char sex;float score;
struct date birthday;
}student1;
struct date{int month;int day;int year;
};
结构体变量的使用
一般形式:结构体变量名. 成员名
“.”是成员(又叫分量)运算符。它的优先级最高
struct student{int num;char name[20];float math;float c_language;float english;float sum;} x,y;
x.math=60;
x. c_language=85;
x. english=77;
x.sum=x.math+x. c_language+ x. english;
结构体变量的初始化
1、直接用赋值运算初始化
struct stu
文档评论(0)