PTA学生成绩排序-C语言详解
生活随笔
收集整理的這篇文章主要介紹了
PTA学生成绩排序-C语言详解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
7-72 學生成績排序 (20分)
給出一組學生名單(姓名和成績),請輸出按成績從大到小排序后的結果(名次和姓名)。成績相同的人擁有相同的名次,且按姓名的字典序從小到大排列。題目保證學生姓名沒有重復。
輸入格式:
第一行給出不大于10000的整數N。 接下來N行,每行給出學生姓名和成績,以空格分隔。學生姓名不超過20個字符。
輸出格式:
共輸出N行,每行包含對應的學生排名和姓名,以空格分隔。
輸入樣例:
7
KongDezhen 94
FuTaotao 93
HuYu 94
XuJiecen 94
WuSuqi 96
ChenDa 93
HuNianbo 95
輸出樣例:
1 WuSuqi
2 HuNianbo
3 HuYu
3 KongDezhen
3 XuJiecen
6 ChenDa
6 FuTaotao
這題的第一個難點主要是需要在給成績排序的同時還要給名字的首字母排序。所以建立一個比較函數較為便捷,然后符合cmp函數的條件就進行排序,其實就是冒泡排序的進階
第二個難點是排名的問題,若成績相同排名相同,其實排名還是按照名次的,仔細揣摩一下我最后是如何排的,挺基礎的一個解決方式。
總結
以上是生活随笔為你收集整理的PTA学生成绩排序-C语言详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言程序练习- L1-040 最佳情侣
- 下一篇: C语言入门题-是不是太胖了 (10分)