/*编写程序,定义用于存储学生信息的结构体数组,输入学生的准考证号、姓名和成绩信息,成绩包括三个信息:语文、数学、英语,并且用double类型进行成绩的储存。计算每位学生的总分,并按总分由高到低输出学生信息表。*/#include<stdio.h>#define N 2//inStruct();输入模块 struct { char num[11]; char name[12]; double score[3]; }stu[N];void main( ){ int i,j,maxi; double sum,max; for(i=0;i<N;i++) { printf("准考证号\n"); scanf("%s",stu[i].num); printf("名字\n"); scanf("%s",stu[i].name); for(j=0;j<3;j++) { printf("成绩%d:\n",j+1); scanf("%f",&stu[i].score[j]); } } //求和模块 排序 max=0; maxi=0; for(i=0;i<N;i++) { sum=0; for(j=0;j<3;j++) sum=stu[i].score[j]+sum; if(sum>max) { max=sum; maxi=i; } } //输出模块 printf("NUM NAME Chinese math ENGLISH SUM\n"); printf("_______________________________________________________________________\n"); for(i=0;i<N;i++) { printf("\n%-5s%-10s",stu[i].num,stu[i].name); for(j=0;j<3;j++) printf("%-10.2f",stu[i].score[j]); printf("%-9.2f",sum); } }
- 1 回答
- 0 关注
- 1093 浏览
添加回答
举报
0/150
提交
取消