#include <stdio.h>
struct student{
int num;
char name[40];
int computer, english, math;
double average;
};
int main(void){
int i, index, j ,n;
struct student students[50], temp;
printf("Input n:");
scanf("%d", &n);
for (i = 0; i < n; i++) {
printf("Input the info of No.%d:\n", i+1);
printf("number:");
scanf("%d", &students[i].num);
printf("name:");
scanf("%s", students[i].name);
printf("math score:");
scanf("%d", &students[i].math);
printf("english score:");
scanf("%d", &students[i].english);
printf("computer socre:");
scanf("%d", &students[i].computer);
students[i].average = (students[i].math + students[i].english + students[i].computer) / 3.0;
}
for (i = 0; i<n-1; i++) {
index = i;
for (j = i+1; j<n; j++) {
if (students[j].average > students[index].average) {
index = j;
}
}
temp=students[index];
students[index] = students[i];
students[i] = temp;
}
printf("num\tname\taverage\n");
for (i = 0; i < n; i++) {
printf("%d \t%s \t %.2lf\n",students[i].num, students[i].name, students[i].average);
}
return 0;
}