期末考试成绩比拼:找出最厉害学生的代码实现及注意要点
#include <iostream> #include <string> using namespace std; struct Student { string name; int chinese, math, english; int total() const { return chinese + math + english; } }; int main() { int n; cin >> n; Student top; int maxTotal = -1; for (int i = 0; i < n; i++) { Student stu; cin >> stu.name >> stu.chinese >> stu.math >> stu.english; int currentTotal = stu.total(); if (currentTotal > maxTotal) { maxTotal = currentTotal; top = stu; } } cout << top.name << " " << top.chinese << " " << top.math << " " << top.english << endl; return 0; } 我在以往的开发过程中,碰到过以下几点需要格外小心处理的地方: 1. 比较总分时,初始最大值应设为-1,确保第一个学生能被正确记录。 2. 处理多个学生总分相同的情况,题目要求输出靠前的,所以使用大于号而不是大于等于。 3. 输入数据时,姓名为字符串,注意使用cin直接读取,避免包含空格问题。 ######[AI写代码神器 | 257点数解答 | 2025-12-16 12:24:03]
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)345
- 工程师必知:软件系统用户文档编写九大要点揭秘(百度文心 | 350点数解答 | 2023-11-09 18:23:53)185
- Java程序模拟教学选课:林老师开课,58 位学生选课男女比例大揭秘( | 2653点数解答 | 2024-04-02 11:00:16)471
- Java程序设计课程:模拟教学管理,统计58位选课学生男女比重( | 363点数解答 | 2024-04-05 18:31:39)473
- R语言实战:用配对样本t检验评估课程强化集训对学生成绩的提升效果(GPT | 630点数解答 | 2024-11-26 22:00:01)321
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)313
- 用 JS 中 for 循环实现 1 到 100 相加并输出结果到页面的完整代码 ( | 240点数解答 | 2024-05-20 22:11:29)464
- 用 JS 的 while 循环实现 1 到 100 相加并输出到页面的代码揭秘( | 47点数解答 | 2024-05-20 22:16:48)356
- Java实现Student类:含构造、方法及年龄判定(字节豆包 | 464点数解答 | 2024-11-19 15:55:26)383
- Python 实现多功能手机通讯录:添加、查看、删除、修改、查找全搞定!(字节豆包 | 1030点数解答 | 2025-06-05 15:47:56)242
- C++实现九九乘法表输出及代码详细解释(字节豆包 | 412点数解答 | 2026-02-06 22:10:32)60
- 用 Pandas 深度剖析数据:从读取到统计分析全流程实战(GPT | 642点数解答 | 2024-06-30 15:39:49)357