#include struct Data { int ID; float score1; float score2; float score3; } stu[1001]; int stl = 0; float total(struct Data* a) { return a->score1 + a->score2 + a->score3; } void swap(struct Data* a, struct Data* b) { struct Data t = *a; *a = *b; *b = t; } void input1() { scanf("%d", &stu[stl].ID); scanf("%f", &stu[stl].score1); scanf("%f", &stu[stl].score2); scanf("%f", &stu[stl].score3); stl++; } void Question1() { printf("Please input info of three students:\n"); input1();input1();input1(); printf("%d %2.1f %2.1f %2.1f %.1f\n", stu[stl-3].ID, stu[stl-3].score1, stu[stl-3].score2, stu[stl-3].score3, total(&stu[stl-3])); printf("%d %2.1f %2.1f %2.1f %.1f\n", stu[stl-2].ID, stu[stl-2].score1, stu[stl-2].score2, stu[stl-2].score3, total(&stu[stl-2])); printf("%d %2.1f %2.1f %2.1f %.1f\n", stu[stl-1].ID, stu[stl-1].score1, stu[stl-1].score2, stu[stl-1].score3, total(&stu[stl-1])); } void Typein() { scanf("%d", &stu[stl].ID); scanf("%f", &stu[stl].score1); scanf("%f", &stu[stl].score2); scanf("%f", &stu[stl].score3); stl++; } int main() { Typein(); Typein(); Typein(); printf("%d %2.1f %2.1f %2.1f %.1f\n", stu[stl-3].ID, stu[stl-3].score1, stu[stl-3].score2, stu[stl-3].score3, total(&stu[stl-3])); printf("%d %2.1f %2.1f %2.1f %.1f\n", stu[stl-2].ID, stu[stl-2].score1, stu[stl-2].score2, stu[stl-2].score3, total(&stu[stl-2])); printf("%d %2.1f %2.1f %2.1f %.1f\n", stu[stl-1].ID, stu[stl-1].score1, stu[stl-1].score2, stu[stl-1].score3, total(&stu[stl-1])); }