學生資料排序

2021-09-10 04:44:45 字數 1373 閱讀 8603

某班 有n個學生(不超過100),每個學生的資訊包括學號(long no),姓名(char name[9])和三門課的成績(int score[4],其中score[0]~score[3]分別用來存放總分,語文,數學和英語的成績)。

編寫程式,錄入n個學生的資訊,然後按照總分降序排序(如果總分相同的按照學號小的在前),最後輸出排序後的學生資訊。

注意:main函式已經給定(如下所示)。

請將程式補充完整。

提交時只需要提交自己補充的**部分,不需要提交給定的main函式的**部分。

#includeint main()

return 0;

}

包含多組測試資料,每組測試資料第一行包含1個整數n(大於1小於等與100),表示學生人數。接下來的n行為n個學生的詳細資訊,包括學號,姓名,語文,數學和英語的分數,個資料之間用空格隔開。

每組測試資料輸出佔n行,每行輸出乙個學生的資訊。每一行的輸出資料依次為:排名,學號,姓名,總分,英文成績,數學成績和英語成績。各部分資料之間用空格隔開。(具體詳見樣例輸出)

5

1001 aaa 54 85 65

1002 bbb 54 65 85

1003 ccc 88 99 99

1004 ddd 35 50 50

1005 eee 99 99 99

1 1005 eee 297 99 99 99

2 1003 ccc 286 88 99 99

3 1001 aaa 204 54 85 65

4 1002 bbb 204 54 65 85

5 1004 ddd 135 35 50 50

仔細讀題,能讀懂這題的意思,乙個結構體的好例題。

c語言中結構體的用法:

參考涉及到結構體的互換,需要另外定義乙個結構體來交換。(詳見**中的 「 t 」 )

我用的氣泡排序(因為不想手打快排,說白了就是懶。。)

打**的時候一定要仔細……結構體看得眼花……

以下提供完整**,抄作業是不對的喲~

#includestruct student

;void input(struct student stu[100],int n)

return;

}void sort(struct student stu[100],int n)

} return;

}void print(struct student stu[100],int n)

return;

}int main()

return 0;

}

學生資訊排序

description 定義存放乙個學生資訊的結構體型別,學生資訊包括 姓名,學號,性別,院系,要求在隨意輸入5個學生的相關資訊後,按照學號從小到大順序輸出這些學生的資訊。input 先輸入5名學生的資訊,按學號順序排序輸出後在輸入要統計的院系名稱 output 先按學號從小到大的順序輸出學生資訊 ...

學生資訊排序

問題描述 從鍵盤中讀入最多不超過50個學生的學生資訊 包括空格隔開的學號 姓名 年齡 學分資訊,以學號從低到高排序 輸入形式 每次鍵盤讀入最多不超過50個學生的學生資訊 第一行為學生人數 後面每一行為空格隔開的學生學號 姓名 年齡 學分,其中學號和年齡都是整數,學分為小數,姓名為字串,不超過5位英文...

學生成績排序

n.txt檔案內存放著學生的資訊 資訊包括姓名和分數 如 張三 90 李四 78 陳五 82 姓名和分數之間用空格隔開 分數和姓名之間換行 要求寫乙個程式 把這些資料根據分數從小到大進行排序 如 李四 78 陳五 82 張三 90 排序結果依然放入這個檔案中。大家看下如何寫,這裡的行數是隨機的。我寫...