#include "stdio.h"
#include <stdlib.h>
#define SIZE 10
struct student{
char id[20];
char name[20];
int score[3];
float average;
} stud[SIZE];
void input() /* 输入学生的信息 */
{
int i;
for(i=0;i<SIZE;i++)
{
printf("第%d个学生的信息:\n",i+1);
scanf("%s%s%d%d%d",stud[i].id,stud[i].name,&stud[i].score[0],&stud[i].score[1],&stud[i].score[2]);
stud[i].average=(stud[i].score[0]+stud[i].score[1]+stud[i].score[2])/3.0;
}
}
void sort /* 按照平均分由高到低排列 */
{
int i,j;
struct student temp;
for(i=0;i<SIZE;i++)
{
for(j=0;j<SIZE-i-1;j++)
{
if(stud[j].average<stud[j+1].average)
{
temp=stud[j];
stud[j]=stud[j+1];
stud[j+1]=temp;
}
}
}
}
void output() /* 输出学生的信息 */
{
int i;
printf("\n");
for(i=0;i<SIZE;i++)
printf("%s %s %d %d %d %3.1f\n",stud[i].id,stud[i].name,stud[i].score[0],stud[i].score[1],stud[i].score[2],stud[i].average);
}
void main()
{
input();
sort();
output();
}
追问没有运行出来是怎么了?
本回答被提问者和网友采纳