题目
结构体数组:按成绩排序输出学生姓名
思路
本题读入多名学生的姓名和成绩,按成绩从高到低输出姓名。 用结构体数组存数据,写比较函数按 score 降序,调用 qsort 排序后依次打印 name。
解题分析
结构体数组排序交换整 类。按成绩降序用冒泡/选择均可,比较字段 score。
完整程序
import java.io.*;
public class Main {
public static void main(String[] args) {
class St {
String n;
int s;
}
St[] st = new St[3];
for (int i = 0; i < 3; i++) {
st[i] = new St();
st[i].n = "Amy";
st[i].s = 85;
}
Arrays.sort(st, (a, b) -> Integer.compare(b.s, a.s));
for (St x : st) System.out.println(x.n);
}
}
运行示例
输出:
Bob
Amy
Cal