解题思路:多组数据,---->结构体数组
注意事项:
参考代码:
#include<stdio.h> struct Student { char sno[20]; char name[20]; int great[3]; } s[100];//定义结构体数组,存储多组数据 void input(int n) { int i; for(i=0;i<n;i++){ scanf("%s%s%d%d%d",s[i].sno,s[i].name,&s[i].great[0], &s[i].great[1],&s[i].great[2]); } } void ave(int n){ int i; int sum1=0,sum2=0,sum3=0; for(i=0;i<n;i++){ sum1+=s[i].great[0]; sum2+=s[i].great[1]; sum3+=s[i].great[2]; } printf("%d %d %d",sum1/n,sum2/n,sum3/n); printf("\n"); } void print(int n) { int max,i,t=0; max=s[0].great[0]+s[0].great[1]+s[0].great[2]; for(i=1;i<n;i++){ if(max<(s[i].great[0]+s[i].great[1]+s[i].great[2])){ max=s[i].great[0]+s[i].great[1]+s[i].great[2]; t=i; } } printf("%s %s %d %d %d",s[t].sno,s[t].name,s[t].great[0], s[t].great[1],s[t].great[2]); } int main() { int n; scanf("%d\n",&n); input(n); ave(n); print(n); return 0; }
0.0分
0 人评分