湖北理工学院c语言实验报告七答案(完整版)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

实验七结构体和共用体实验课程名:高级语言程序设计(C)专业班级:学号:姓名:实验时间:实验地点:指导教师:一、实验目的和要求:1.掌握结构体类型变量的定义和使用;2.掌握结构体类型数组的概念和使用;3.掌握链表的概念,初步学会对链表进行操作二、实验内容:1、任务名称源代码:#defineN5#includestdio.hstructstudent{charnum[6];charname[8];intscore[4];}stu[N];voidinput(structstudentstu[]){inti,j;for(i=0;iN;i++){printf(\nInputscoreofstudent%d:\n,i+1);printf(no.:);scanf(%s,stu[i].num);printf(name:);scanf(%s,stu[i].name);for(j=0;j3;j++){printf(score%d:,j+1);scanf(%d,&stu[i].score[j]);}printf(\n);}}voidprint(structstudentstu[]){inti,j;for(i=0;i5;i++){printf(%5s%10s,stu[i].num,stu[i].name);for(j=0;j3;j++)printf(%9d,stu[i].score[j]);printf(\n);}}voidmain(){voidprint(structstudentstu[]);voidinput(structstudentstu[]);input(stu);print(stu);}运行结果:运行结果分析:首先定义的是结构体(其中要注意结构体中数组),在定义和引用结构体数组是要注意结构体数组的引用,定义函数和引用函数要注意括号内部的变量时结构体。2、任务名称源代码:#defineN5structstudent{charnum[6];charname[8];intscore[4];floatavr;}stu[N];#includestdio.hintmain(){inti,j,max,maxi,sum;floataverage;for(i=0;iN;i++){printf(\nInputscoresofstudent%d:\n,i+1);printf(NO.:);scanf(%s,stu[i].num);printf(name:);scanf(%s,stu[i].name);for(j=0;j3;j++){printf(score%d:,j+1);scanf(%d,&stu[i].score[j]);}}average=0;max=0;maxi=0;for(i=0;i3;i++){sum=0;for(j=0;j3;j++)sum+=stu[i].score[j];stu[i].avr=sum/3.0;average+=stu[i].avr;if(summax){max=sum;maxi=i;}}average/=N;printf(NO.namescore1score2score3average\n);for(i=0;iN;i++){printf(%5s%10s,stu[i].num,stu[i].name);for(j=0;j3;j++)printf(%9d,stu[i].score[j]);printf(%8.2f\n,stu[i].avr);}printf(average=%6.2f\n,average);printf(Thehighestscoreis:%s,scoretotal:%d.,stu[maxi].name,max);}运行结果:运行结果分析:输入输出时要引用结构体数组中的各种变量,弄清输入输出时的格式,要把简单的排序、求和、求平均值运用于结构体时不能搞混乱了,思路要清晰。三、结论(写本次实验的收获)本次实验过程中我感觉到我对c语言中的许多语法规则记得不是很清楚,运用时经常出现语法错误,感觉结构体运用时好多东西好混乱。但是我通过此次的实验对选择结构有了更深刻的记忆,对其中以前十分模糊的搞不清楚的语法规则有了新的理解和记忆。我们以后需要对从语言的训练要加强,上机是十分重要的!

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功