#include <iostream>
#include <string>
using namespace std;
int main()
{
int n; //n为输入学生的数量
cin >> n;
//成绩最高的同学的姓名和学号
string High_name;
string High_num;
//成绩最低的同学的姓名和学号
string Low_name;
string Low_num;
//最低成绩和最高成绩
int High_score = 0;
int Low_score = 100;
//学生的姓名和学号
string name;
string num;
int score;
//依此读入每个学生的信息并进行比较
for (int i = 0; i < n; i++)
{
cin >> name >> num >> score;
//进行判断,若读入的成绩高于当前的最高成绩,则令该成绩为最高成绩并修改姓名及学号
if (score > High_score)
{
High_name = name;
High_num = num;
High_score = score;
}
//若读入的成绩低于当前的最低成绩,则令改成绩为最低成绩并修改姓名及学号
if (score < Low_score)
{
Low_name = name;
Low_num = num;
Low_score = score;
}
}
//分别输出最高成绩和最低成绩的学生的姓名和学号
cout << High_name << " " << High_num << endl;
cout << Low_name << " " << Low_num << endl;
return 0;
}
1.本题也可通过结构体来解决。
2.使用C++中的string类可大大简化题目中对字符串的处理的复杂度
使用string类的时候,头文件记得要加include<string>,而不是string.h
D-wade.陈 发布了20 篇原创文章 · 获赞 25 · 访问量 878 私信 关注