现有一份用户名单,你需要找出得分最高的用户。用户名单中含有以下信息:
name :一个长度在 [1,15]范围内的字符串,字符串中只含有大小写字母、
数字和下划线,当然不同用户的name 可能重复。
id :一个在 [1,10
7]范围内的整数, id 具有唯一性。
score :一个在 [−9999,9999]范围内的整数,不同用户的 score 可能重复。
当有多个 score 最高的用户时,输出 id 最小的。
你题目的解答代码如下:
#include <iostream>
using namespace std;
typedef struct {
int id;
char name[15];
int score;
} Student;
int main()
{
int n,i,max=0;
cin >> n;
Student a[n];
for (i = 0; i < n; i++)
cin >> a[i].name >> a[i].id >> a[i].score;
for (i = 0; i < n; i++)
if (a[max].score < a[i].score || (a[max].score == a[i].score && a[max].id > a[i].id))
max = i;
cout << a[max].name << " " << a[max].id << " " << a[max].score << endl;
return 0;
}
如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!