学生的记录由学号、3门课程成绩和平均分组成,根据班级人数,将学生记录存放在结构体数组中。请编写函数,计算该班每个学生的3门成绩平均分放到结构体数组的平均分成员中,输出所有学生的完整记录,并找出排名第一的学生。要求:班级人数、学生记录均由键盘输入
#include<stdio.h>
#include<stdlib.h>
#define SIZE 100
typedef struct STUDENT
{
int id;
int s1,s2,s3;
float avg;
}
student[SIZE];
int main()
{
student s;
int i,n,flag;
scanf("%d",&n);
float m=0;
for(i=0; i<n; i++)
{
scanf("%d%d%d%d",&s[i].id,&s[i].s1,&s[i].s2,&s[i].s3);
s[i].avg=(s[i].s1+s[i].s2+s[i].s3)*1.0/3;
if(s[i].avg>m){
flag=i;
m=s[i].avg;
}
}
for(i=0; i<n; i++){
printf("学号%d 成绩1:%d 成绩2:%d 成绩3:%d 平均分%.2f\n",s[i].id,s[i].s1,s[i].s2,s[i].s3,s[i].avg);
}printf("第一是%d",s[i].id);
return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!