1 条题解
-
0
自动搬运
来自洛谷,原作者为

chen_zhe
Aya 敲可爱的~搬运于
2025-08-24 21:07:48,当前版本为作者最后更新于2025-05-28 13:46:28,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
欢迎报名洛谷网校,期待和大家一起进步!
本题考察结构体,排序。
我们用一个结构体
Stu来存储每个学生的信息,包括学号id(整数)和成绩sc(浮点数):struct Stu { int id; double sc; }a[105];这样,我们可以直接使用
a[i].id和 a[i].sc` 来获取第 个学生的学号和成绩。题目中,要求出第 名(也就是第 大)的学生学号以及成绩,因此我们需要进行“排序”操作。我们可以使用选择排序算法,每次找出 中最大的元素,把它和数组上第 个位置的元素交换。
参考代码:
for (int i = 1; i <= n - 1; ++i) { int best = i; for (int j = i + 1; j <= n; ++j) { if (a[j].sc > a[best].sc) best = j; } if (best != i) { Stu tmp = a[i]; a[i] = a[best]; a[best] = tmp; // 以上 3 行可以简化为 swap(a[i], a[best]),需要 algorithm 头文件。 } }
- 1
信息
- ID
- 11815
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 1
- 标签
- 递交数
- 1
- 已通过
- 0
- 上传者