注意我错的地方:
1.ave定义在了结构体里面----这样不正确
理由是:
2.ave定义时候是int 型,然而应该是double型的
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
struct students{
char num[11];
double a,b,c;
};
int main()
{
int i,n;
scanf("%d",&n);
struct students stu[n];
double ave1=0,ave2=0,ave3=0;
for(i=0;i<n;i++)
{
scanf("%s %lf %lf %lf",stu[i].num,&stu[i].a,&stu[i].b,&stu[i].c);
}
for(i=0;i<n;i++)
{
ave1+=stu[i].a;
ave2+=stu[i].b;
ave3+=stu[i].c;
}
ave1/=n;
ave2/=n;
ave3/=n;
printf("1 %.1f\n",ave1);
printf("2 %.1f\n",ave2);
printf("3 %.1f\n",ave3);
return 0;
}