1004. 成绩排名 (20)
时间限制
400 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
CHEN, Yue
读入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
//
// main.cpp
// PATBase1004
//
// Created by Tong on 3/14/16.
// Copyright © 2016 Tong. All rights reserved.
//
#include <iostream>
#include <vector>
using namespace std;
class Student{
public:
Student(){
grade = 0;
}
char name[11];
char no[11];
int grade;
};
int main(int argc, const char * argv[]) {
// insert code here...
vector<Student> stuVector;
int n, i;
if(!(cin>>n)){
return 0;
}
for (i = 0; i < n; i++) {
Student student;
cin>>student.name;
cin>>student.no;
if (!(cin>>student.grade)) {
break;
}
stuVector.push_back(student);
}
if (i!=n) {
return 0;
}
Student maxStu, minStu;
for (i = 0; i < stuVector.size(); i++) {
if (i==0) {
maxStu = stuVector[0];
minStu = stuVector[0];
continue;
}
if (stuVector[i].grade > maxStu.grade) {
maxStu = stuVector[i];
}
if (stuVector[i].grade < minStu.grade) {
minStu = stuVector[i];
}
}
cout<<maxStu.name<<" "<<maxStu.no<<endl;
cout<<minStu.name<<" "<<minStu.no;
return 0;
}