#include <iostream> #include <cstdio> #include <algorithm> using namespace std; const int MAX_NUM = 100; struct Student { int number; int score; }; /** * 自定义比较规则,升序排序 * @param x * @param y * @return */ bool compare(Student x, Student y) { //成绩相等,则比较学号 if (x.score == y.score) { return x.number < y.number; } else { //成绩不等,则比较成绩 return x.score < y.score; } } /** * 成绩排序--清华大学 * @return */ int main() { Student studentArr[MAX_NUM]; int n; cin >> n; for (int i = 0; i < n; ++i) { cin >> studentArr[i].number >> studentArr[i].score; } sort(studentArr, studentArr + n, compare); for (int j = 0; j < n; ++j) { cout << studentArr[j].number << " " << studentArr[j].score << endl; } return 0; }