7-95 谁是第一名
分数 10
全屏浏览题目
切换布局
作者?c++课程组
单位?湖州师范学院
输入学生的人数,然后再输入每位学生的分数和姓名,求获得最高分数的学生的姓名。
第一行输入一个正整数N(N <= 100),表示学生人数。接着输入N行,每行格式如下:
分数 姓名
分数是一个非负整数,且小于等于100;
姓名为一个连续的字符串,中间没有空格,长度不超过20。
数据保证最高分只有一位同学。
获得最高分数同学的姓名。
4
77 jim
99 tom
97 lily
96 lucy
tom
代码长度限制
16 KB
时间限制
400 ms
内存限制
#include <iostream>
#include <algorithm>
using namespace std;
//定义结构体,用结构体来存放分数和对应的人名
struct student{
int data;
string ch;
}s[100];
//用sort函数来处理结构体中比较数字大小排序
bool cmp(student x,student y){
if(x.data!=y.data)
return x.data>y.data;
}//
int main(){
int n;
cin>>n;
for(int i=0;i<n;i++){
cin>>s[i].data>>s[i].ch;
}
sort(s,s+n,cmp);
cout<<s[0].ch;//输出成绩最高的同学的名字
return 0;
}