1、3. 成绩查询:void search (struct student *stu); 当从键盘上输入3时,输出“请输入学号”,输入学号后与之进行匹配,匹配成功,输出该生信息,不成功输出“对不起,没有该生”;4. 每人的平均成绩void average (struct student *stu);当从键盘上输入4时,求每人的总分,然后再求平均值,并通过循环,依次输出,每人的平均成绩;5. 成绩修改void update (struct student *stu);当从键盘上输入5时,开始修改成绩,然后将改好成绩6. 当从键盘上输入0时,退出系统。流程设计:代码设计:#include void s
2、how (struct student *stu); /显示成绩单/void max (struct student *stu); /各科最好成绩/ /成绩查询/void average (struct student *stu); /每个人平均成绩/void update (struct student *stu); /成绩修改/struct student /定义结构体/ char name20; int num; int age; char sex4; float score1; float score2; float score3;stu10=张三,1,18,男,86,95,92,李四
3、,2,19,女,85.5,89,92,小红,3,19,86,91,90,小华,4,17,86,89,95,小明,5,19,78,88,93.5,小亮,6,20,74,78,88,小浩,7,19,66,67,95.5,小敏,8,20,83,79,90,小杰,9,19,56,89,90.5,小洁,10,18,84,77,86;/定义数组/ int main (void) int m; do /do循环/ printf(t*学生信息管理*n);n printf(_n1:显示成绩信息 2:各科最好成绩n3:成绩查询 4:每个人平均成绩n5:成绩修改 0:退出系统ntt请在上述功能中选择(05)n sc
4、anf(%d,&m); switch (m) case 1: show (stu); break; case 2:max(stu); case 3:search (stu); case 4: average(stu); case 5: update(stu);break; case 0: default:选择错误!请重选。 while (m!=0); /show (stu); /max( stu); /search (stu); /average(stu); /update(stu); return 0;void show (struct student *stu) /显示成绩单函数/ int
5、 i,j;姓名t学号t年龄t性别t语文t数学t英语n for (j=0;j60;j+)%c,- /输出横线/ for (i=0;i10;i+)%st %dt %dt %st %4.2ft %4.2ft %4.2fn, /输出各科成绩/ stui.name,stui.num,stui.age,stui.sex,stui.score1,stui.score2,stui.score3);void max (struct student *stu) /各科最好成绩函数/ int i; float max1,max2,max3; max1=stu0.score1;i+)/循环 / if (max1stu
6、i.score1) max1=stui.score1;语文最好成绩是:%6.2f, ,max1);/语文最好成绩/ max2=stu0.score2; if (max2stui.score2) max2=stui.score2;数学最好成绩是:,max2); /数学最好成绩/ max3=stu0.score3; if (max3stui.score3) max3=stui.score3;英语最好成绩是:,max3);/英语最好成绩 /void search (struct student *stu) /定义成绩查询函数/ int i,a;n请输入要查询的学号: scanf(a); if (1=
7、a&a=10)/确保输入值在范围之内/ if (a=stui.num) printf(, stui.name,stui.num,stui.age,stui.sex,stui.score1,stui.score2,stui.score3); else printf (n对不起,没有这个学生nvoid average (struct student *stu) /求每个人得平均成绩函数/ float sum, ave; sum=0; sum=sum+stui.score1+stui.score2+stui.score3;/求和 / ave=sum/3;/求平均值/%s:%4.2fn,stui.name,ave); void update (struct student *stu) /修改成绩函数 / int i,n,j;请输入要修改成绩学生的学号:n);=n&n=10) if (n=stui.num)/判断/,stui.name); /输入新成绩/请输入该生语文成绩: scanf(%fstui.score1);请输入该生数学成绩:stui.score2);请输入该生英语成绩:stui.score3); printf (, /输出修改后的成绩单/运行结果:显示成绩单:各科最好成绩成绩查询:平均成绩:修改成绩:退出系统:
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1