5个学生4门课

来源:百度知道 编辑:UC知道 时间:2024/06/13 23:20:26
已知5个学生的4门课成绩,要求求出每个学生的平均成绩,然后对平均成绩从高到低排序
在线等急!!
需要源代码可直接运行那种

#include <stdio.h>
struct data
{
char name[20];
float score1;
float score2;
float score3;
float score4;
float avg;
} stu[5];
void func(struct data []);
int main()
{
int i=0;
for(i=0;i<=4;i++)
{
printf("输入第%d个学生的情况(空格顿开,回车结束)\n",i+1);
scanf("%s%f%f%f%f",stu[i].name,&stu[i].score1,&stu[i].score2,&stu[i].score3,&stu[i].score4);
stu[i].avg=(stu[i].score1+stu[i].score2+stu[i].score3+stu[i].score4)/4;
}
func(stu);
return 0;
}
void func(struct data stu[])
{
struct data b;
int i,j;
for(i=0;i<=3;i++)
for(j=0;j<=2-i;j++)
if(stu[j].avg<stu[j+1].avg)
{
b=stu[j];
stu[j]=stu[j+1];
stu[j+1]=b;
}
printf("排序为\n");
printf("名次 姓名 score1 score2 score3 score4 平均分\n");
for(i=0;i