- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
语言程序设计实验报告7结构体共用体.doc
福建农林大学金山学院实验报告
系(教研室): 专业: 年级: 2014
实验课程: 姓名: 学号: 实验室号:_
计算机号: 实验时间: 指导教师签字: 成绩:
实验7:结构体和共用体
一、 实验目的和要求
掌握结构体类型变量的定义和使用
掌握结构体类型数组的概念和应川
掌握共用体的概念与使用
二、 实验内容和原理
编写一个函数print,输岀一个学生的成缋数组,该数组中有5个学生的数据记录,每个记录包括 num、name、score[3J,用主函数输入这些记录,用print函数输出这些记录。
设有若干个人员的数据,其中有学生和老师。学生数据包拈:姓名、号码、性别、职业、班级。教 师的数裾包括:姓名、号码、性别、职业、职务。现要求把它们放在同一表格屮,见阁1。如果job项是t
(教师),则第5项为position (职务)。如果job项是s,则第5项为class (班级)。要求输入人员的数据, 然后再输山。为简化起见,只设两个人(一个学生,一个教师)。
num
name
sex
job
class
^^position
101
Li
f
s
501
102
Wang
m
t
prof
图1
有5个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入5个学生数据,要求输 出3门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课的成绩、平均分数)。
对候选人得票的统计程序。设有三个候选人,每次输入一个得票的候选人的名字,要求最后输岀各 人得票结果。设有10人投票。
三、实验环境
硬件:PC机;
软件:Windows 操作系统、Visual C++ 6. 0。
U!?法描述及实验步骤
U!
?法描述及实验步骤
1、 先定义N为5即有五个学生,建立结构体struct student,再定义字符型数组num和name、整型数 组score。对print进行函数声明且定义i、j。再用for语句进行循环输出相应的num、Name、score。
2、 先声明结构体 struct,再定义 int num;char name[10];char sex;char job;和共用体 int banji;/char position[10];和结构体数总共2个;定义整型i,用for语句循环,以此先得到num,.name,sex,job,再用if 语句的嵌套对于job字符的不同判断共用体需要放什么。最后用for语句循环和if语句来输fli结果。
3、 先定义N为5即有5个学生。建立结构体struct student,再定义字符型数组iwm和name.浮点型 数组score、avr。定义整型i,j,maxi;浮点型sum,max,average。用for语句分别各组输入num、name、 score。再用 for i/j■句 sum+=stu[i].score[jl; stu[il.avr=sum/3.0;average+=stu[i].avr;求 sum,average 的值,和用 if语句if(sum〉max){max=sum;maxi=i;}来讲最高成绩者保存在maxi。最后输出全部学生成绩和最好的成绩。
4、 先声明结构体类型struct Person、定义字符型数组name和整型count。定义原始数据leader[3]= {|1,0,丁,0,13,0}淀义整型1,』和字符型数组leadername,用for语句限制投票人总共i个为10人, 和用 for 语句进行循环和 if 语句 for(j=0;j3;j++) if(strcmp(leademame,leader|j].name)==0)leader[j].count++;
来得出相对候选人的得票数。
调试过程
第二题person[i].category.position应定义为字符串型而不是字符型。
五、实验结果
1、
NO.
nane
scorel
score2
score3
101
Li
90
79
89
102
Ma
97
90
68
103
Wang
77
70
78
104
Fun
67
89
56
105
Xue
97
85
84
■
■
■
101
Li
f
501
102
Wang
I1!
t
prof
NO. name
sexjob
class/position
101 Li
f s
501
102 Wang
n t
prof
■
■
■
■
NO.
name scorel
score2
score3
average
101
A
75.00
85.00
76.00
78.67
102
B
85.00
76.00
88.00
83.00
103
C
86.00
90.00
79.00
85.00
104
D
85.00
91.00
88.00
88.00
原创力文档


文档评论(0)