#include
struct student{
int id;
char name[10];
float score[3];
}stu[5];
int main()
{
float sum[5]={0};
float avg[5];
float max;
float sum1=0;
int i,j,a;
for(i=0;i<5;i++){
scanf("%d%s",&stu[i].id,&stu[i].name);
for(j=0;j<3;j++){
scanf("%f",&stu[i].score[j]);
}
}
for(i=0;i<5;i++){
for(j=0;j<3;j++){
sum[i]+=stu[i].score[j];
}
avg[i]=sum[i]/3;
}
for(i=0;i<5;i++){
sum1+=sum[i];
}
max=sum[0];
for(i=1;i<5;i++){
if(max"NO. name score1 score2 score3 average\n");
for(i=0;i<5;i++){
printf("%d %s %0.2f %0.2f %0.2f %0.2f\n",stu[i].id,stu[i].name,stu[i].score[0],stu[i].score[1],stu[i].score[2],avg[i]);
}
printf("average=%0.2f\n",sum1/15);
printf("The highest score is : student %d,%s\n",stu[a].id,stu[a].name);
printf("his scores are:%6.2f,%6.2f,%6.2f,average:%0.2f.",stu[a].score[0],stu[a].score[1],stu[a].score[2],avg[a]);
return 0;
}
scanf("%d%s", &stu[i].id, stu[i].name); stu[i].name已经是指针,不需要加&
sum和avg放到struct student里会更好一些。