PAT 乙級 1004
阿新 • • 發佈:2018-11-23
1004. 成績排名 (20)
讀入n名學生的姓名、學號、成績,分別輸出成績最高和成績最低學生的姓名和學號。
輸入格式:每個測試輸入包含1個測試用例,格式為
第1行:正整數n 第2行:第1個學生的姓名 學號 成績 第3行:第2個學生的姓名 學號 成績 ... ... ... 第n+1行:第n個學生的姓名 學號 成績其中姓名和學號均為不超過10個字元的字串,成績為0到100之間的一個整數,這裡保證在一組測試用例中沒有兩個學生的成績是相同的。
輸出格式:對每個測試用例輸出2行,第1行是成績最高學生的姓名和學號,第2行是成績最低學生的姓名和學號,字串間有1空格。
3 Joe Math990112 89 Mike CS991301 100 Mary EE990830 95輸出樣例:
Mike CS991301 Joe Math990112
#include<iostream> #include<algorithm> //排序 using namespace std; struct data{ char name[12],num[12]; int score; }Stu[100]; bool cmp( const struct data a, const struct data b ) {//降序,bool型別的返回值 return a.score>b.score; } int main() { int n; cin>>n; for( int i=0; i<n; i++ ){ cin>>Stu[i].name>>Stu[i].num>>Stu[i].score; } sort(Stu,Stu+n,cmp); cout<<Stu[0].name<<" "<<Stu[0].num<<endl; cout<<Stu[n-1].name<<" "<<Stu[n-1].num; }