期末考試之排名次
阿新 • • 發佈:2018-10-30
std 根據 turn printf print ati 求根 結構 pro
期末考試之排名次 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Description 期末考試結束了,童鞋們的成績也出來的了,可是為了排名次可忙壞了老師,因為學生太多了。這時,老師把這個任務交給了你,希望你能幫老師完成。作為IT人,你當然不能用笨笨的人工方法了,編程解決才是好辦法。 共有三門課,語文、數學和英語,要求根據學生的各科成績計算出其總成績,並根據總成績從高到低排序。 Input 第一行一個整數N(N<=100),代表學生的人數。 接下來的N行數據,每行有三個整數,C,M,E分別代表一個學生語文、數學和英語的成績。 Output 一共N行,每行一個數,從大到小,分別代表各個學生的總成績。 Sample Input3 70 80 90 59 59 59 100 100 100 Sample Output 300 240 177。
1 #include<stdio.h> 2 struct b 3 { 4 int shuwen; 5 int shuxue; 6 int yingyu; 7 int zong; 8 } student[100],t;//定義student結構體 9 int main() 10 { 11 int a,i,j,N; 12 while (scanf("%d",&N)!=EOF) 13 { 14 for(i = N; i > 0; i--) 15 { 16 scanf("%d%d%d", &student[i].shuwen, &student[i].shuxue, &student[i].yingyu); 17 student[i].zong = student[i].shuwen + student[i].shuxue + student[i].yingyu; 18 19 } 20 for (i = 1; i <= N - 1; i++){//由大到小排序 21 for (j = i + 1; j <= N; j++)22 if (student[i].zong<student[j].zong) 23 { 24 t = student[i]; 25 student[i] = student[j]; 26 student[j] = t; 27 } 28 }//由大到小排序 29 30 for (i = 1; i <= N; i++) 31 { 32 printf("%d\n", student[i].zong); 33 } 34 return EOF; 35 } 36 return 0; 37 }
期末考試之排名次