• 智能AI问答!更聪明、更完整、原创作!
  • 一款基于GPT的超级AI机器人,可以回答问题、聊天、创作、写文案!

用c++语言编写 输入10个学生的姓名和成绩,对10名学生的成绩进行排序,并将排序的结果输出

发布于 2023-12-12 19:33:25

以下是一个简单的C++程序示例,它接收10个学生的姓名和成绩,然后按成绩进行排序(这里以从高到低的顺序为例),最后输出排序后的结果:

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

// 定义一个学生结构体来存储姓名和成绩
struct Student {
    std::string name;
    int score;
};

// 成绩排序的比较函数
bool compare(Student a, Student b) {
    // 降序排列
    return a.score > b.score;
}

int main() {
    // 创建一个向量来存储学生数据
    std::vector<Student> students;

    // 输入学生信息
    for (int i = 0; i < 10; ++i) {
        Student student;
        std::cout << "请输入学生 #" << (i + 1) << " 的姓名: ";
        std::cin >> student.name;
        std::cout << "请输入学生 #" << (i + 1) << " 的成绩: ";
        std::cin >> student.score;
        students.push_back(student);
    }

    // 对学生数据按成绩进行排序
    std::sort(students.begin(), students.end(), compare);

    // 输出排序后的学生信息
    std::cout << "\n学生的成绩从高到低排序结果如下:" << std::endl;
    for (const auto& student : students) {
        std::cout << "姓名: " << student.name << ", 成绩: " << student.score << std::endl;
    }

    return 0;
}

运行此程序时,它会要求用户输入10名学生的姓名和成绩。输入完成后,程序将使用std::sort函数和自定义的compare比较函数对学生数组进行排序,并按成绩从高到低的顺序输出排序后的结果。

请注意,这段代码使用了标准模板库(STL)的vectoralgorithm头文件。在实际应用中,你可能需要添加一些错误检查和数据验证,以确保输入的数据是有效和合理的。

0 条评论

发布
问题

在线
客服