#include<stdio.h> typedef struct grade { float first; float second; float third; }grade; typedef struct student { char num[10]; char name[10]; grade score; }stu; void display(stu student[],int i) { printf("%s %s %.0f %.0f %.0f",student[i].num,student[i].name,student[i].score.first,student[i].score.second,student[i].score.third); } int main() { int i,n,j,k,m; scanf("%d",&n); stu student[1000]; for(i=0;i<n;++i) { scanf("%s %s %f %f %f",&student[i].num,&student[i].name,&student[i].score.first,&student[i].score.second,&student[i].score.third); } float sum1 = 0,sum2 = 0,sum3 = 0; for(j=0;j<n;++j) { sum1 += student[j].score.first; } for(k=0;k<n;++k) { sum2 += student[k].score.second; } for(m=0;m<n;++m) { sum3 += student[m].score.third; } float aver1,aver2,aver3; aver1 = sum1/n; aver2 = sum2/n; aver3 = sum3/n; printf("%.0f %.0f %.0f\n",aver1,aver2,aver3); float psum[1000]; int h=0,flag = 0; for(i=0;i<n;++i) { psum[h] = student[i].score.first+student[i].score.second+student[i].score.third; ++h; }//ÿ¸östudent³É¼¨ºÍ for(j=1;j<n;++j) { if(psum[flag]<psum[j]) flag = j; } display(student,flag); return 0; } |
Double click to view unformatted code.