纯小白求大佬指教!
定义一个学生结构,再定义结构数组,用循环输入成绩的统计计算总成绩,再进行排序输出
#include <stdio.h>
typedef struct _student
{
char name[20];
int score[3];
int sum;
int avg;
}student;
int main()
{
student s[36],temp;
int i,j,t;
for(i=0;i<36;i++)
{
scanf("%s",s[i].name);
s[i].sum = 0;
for(j=0;j<3;j++)
{
scanf("%d",&s[i].score[j]);
s[i].sum += s[i].score[j];
}
s[i].avg = s[i].sum/3;
}
for(i=0;i<35;i++)
for(j=0;j<35-i;j++)
{
if(s[j].sum < s[j+1].sum)
{
temp = s[j];
s[j] = s[j+1];
s[j+1] = temp;
}
}
printf("%-10s%-25s%-10s%-10s%-10s%-10s%-10s\n","排序","姓名","课1","课2","课3","总分","平均分");
for(i=0;i<36;i++)
{
printf("%-10d%-25s",i+1,s[i].name);
for(j=0;j<3;j++)
printf("%-10d",s[i].score[j]);
printf("%-10d%-10d\n",s[i].sum,s[i].avg);
}
return 0;
}