有10个学生,每个学生的数据包括学号、姓名、3门课的成绩。从键盘输入10个学生数据,要求输出每门课的总平均成绩及最高分学生的数据(用结构体数组实现)。
#include<stdio.h>
struct Student{
int num;
char name[20];
float Chinese;
float Math;
float English;
};
int main(){
struct Student stu[10];
float aver1,aver2,aver3;
float sum1=0,sum2=0,sum3=0;
int i,t;
float score[10];
float max=0;
for(i=0;i<10;i++){
scanf("%d%s%f%f%f",&stu[i].num,stu[i].name,&stu[i].Chinese,&stu[i].Math,&stu[i].English);
}
for(i=0;i<10;i++){
sum1=sum1+stu[i].Chinese;
sum2=sum2+stu[i].Math;
sum3=sum3+stu[i].English;
}
aver1=sum1/10;
aver2=sum2/10;
aver3=sum3/10;
for(i=0;i<10;i++){
score[i]=stu[i].Chinese+stu[i].Math+stu[i].English;
if(score[i]>max){
max=score[i];
t=i;
}
}
printf("%d\t %s\t %f\t %f\t %f\t",stu[t].num,stu[t].name,stu[t].Chinese,stu[t].Math,stu[t].English);
printf("%f\t %f\t %f",aver1,aver2,aver3);
return 0;
}