題目描述:有n個學生的資料,將學生資料按成績高低排序,如果成績相同則按姓名字元的字母序排序,如果姓名的字母序也相同則按照學生的年齡排序,並輸出n個學生排序後的資訊。
輸入:測試資料有多組,每組輸入第一行有乙個整數n(n<=1000),接下來的n行包括n個學生的資料。
每個學生的資料報括姓名(長度不超過100的字串)、年齡(整形數)、成績(小於等於100的正數)。
輸出:將學生資訊按成績進行排序,成績相同的則按姓名的字母序進行排序。
然後輸出學生資訊,按照如下格式:
姓名 年齡 成績
樣例輸入:
3abc 20 99
bcd 19 97
bed 20 97
樣例輸出:
bcd 19 97bed 20 97
abc 20 99
學生姓名的字母序區分字母的大小寫,如a要比a的字母序靠前(因為a的asc碼比a的asc碼要小)。
#include#include#include
using
namespace
std;
struct
ebuf[
1000
];bool
cmp(e a,e b)
intmain()
sort(buf,buf+n,cmp);
for(int i=0;i)
}return0;
}
題目1061 成績排序
題目描述 有n個學生的資料,將學生資料按成績高低排序,如果成績相同則按姓名字元的字母序排序,如果姓名的字母序也相同則按照學生的年齡排序,並輸出n個學生排序後的資訊。輸入 測試資料有多組,每組輸入第一行有乙個整數n n 1000 接下來的n行包括n個學生的資料。每個學生的資料報括姓名 長度不超過100...
題目1061 成績排序
題目描述 有n個學生的資料,將學生資料按成績高低排序,如果成績相同則按姓名字元的字母序排序,如果姓名的字母序也相同則按照學生的年齡排序,並輸出n個學生排序後的資訊。輸入 測試資料有多組,每組輸入第一行有乙個整數n n 1000 接下來的n行包括n個學生的資料。每個學生的資料報括姓名 長度不超過100...
題目1061 成績排序
題目描述 有n個學生的資料,將學生資料按成績高低排序,如果成績相同則按姓名字元的字母序排序,如果姓名的字母序也相同則按照學生的年齡排序,並輸出n個學生排序後的資訊。輸入 測試資料有多組,每組輸入第一行有乙個整數n n 1000 接下來的n行包括n個學生的資料。每個學生的資料報括姓名 長度不超過100...