- 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.4结构体数组
主讲:廖智蓉
项目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
结构体实现了一条信息的输入和输出,那么怎样实现一个班级成绩表的输入和输出呢?
问题解决
结构体数组:数组元素都是结构体类型的数组。
关键技术:结构体数组
结构体数组的定义
(1)先声明结构体类型再定义结构体数组。
struct 结构体名
{
成员表列;
};
[struct] 结构体名 数组名[数组大小];
struct student{int num;char name[20];float math;float c_language;float english;float sum;};
struct student x[5];
struct student{int num;char name[20];float math;float c_language;float english;float sum;};
student x[5];
结构体数组的定义
(2)在声明类型的同时定义结构体数组
struct [结构体名]
{
成员表列;
}数组名[数组大小];
struct student{int num;char name[20];float math;float c_language;float english;float sum;} x[5];
struct{int num;char name[20];float math;float c_language;float english;float sum;}x[5];
结构体数组的初始化
1、直接用赋值运算初始化
struct student{int num;char name[20];float math;float c_language;float english;float sum;} x[3]={{101,”张力”,60,70,80},{102,”王强”,66,78,80},{103,”李斯”,63,70,90} };
2、通过循环+scanf函数初始化
for(i=0;i3;i++)
scanf(“%d%s%f%f%f”,x[i].num,x[i].name,x[i].math,x[i]. c_language,x[i]. english);
问题实现
#include stdio.h”
#define N 3
main()
{struct student
{int num; char name[20]; float math,c_language,english,sum; } x[N];
int i;
printf(“请输入3个学生学号、姓名、三门成绩:\n);
}
for(i=0;iN;i++)
{scanf(“%d%s%f%f%f”,x[i].num,x[i].name,x[i].math,x[i]. c_language,x[i]. english);
x[i].sum=x[i].math+x[i]. c_language+x[i]. english;}
printf(“学号\t姓名\t数学\tC语言\t英语\t总分\n”);
for(i=0;iN;i++)
printf(%d\t%s\t%.2f\t%.2f\t%.2f\t%.2f\n,x[i].num,x[i].name,x[i].math,x[i].c_language,x[i].english,x[i].sum);
课后练一练
1、仿照3位学生成绩信息的实现,自己编写5个学生通讯录信息(学号、姓名、性别、QQ号、手机号),通过键盘输入信息,并且按照表格的形式输出。
您可能关注的文档
最近下载
- 基于springboot的校园二手交易小程序.docx VIP
- 小升初英语一般将来时专项训练.pdf VIP
- 17J008 挡土墙(重力式、衡重式、悬臂式)(最新).pdf VIP
- 《非麻醉医师实施口腔诊疗适度镇静镇痛专家共识》解读.pdf VIP
- 2023水电工程建设征地移民安置技术通则.docx VIP
- YY 0017-2016骨接合植入物 金属接骨板.pdf
- 银行业金融机构高级管理人员任职资格考试题库及答案——2024年整理.pdf
- 12第二编 第三章 司马迁与史记.pptx VIP
- 标准图集-23S519-小型排水构筑物.pdf VIP
- 16第二编 第七章 汉代文人诗.pptx VIP
文档评论(0)