C++类与对象实战:查找最高成绩学生

陆遥
陆遥
发布时间:2026-10-13| 4人浏览过
原创

本文提供了一个关于C++类与对象的课后习题简单实例,展示了如何通过建立对象数组、使用指向对象的指针作为函数参数,在自定义的函数中找出5个学生的最高成绩者,并输出其学号。

问题背景

建立一个对象数组,内放5个学生(学号,成绩),设立一个函数max,用指向对象的指针作函数参数,在max函数中找出5个学生的最高成绩者,并输出其学号。

代码实现

#include <iostream>
using namespace std;

class Student {
public:
    Student(int = 10, int = 0);
    int number;
    int score;
    void display();
};

Student::Student(int num, int sco) : number(num), score(sco) {
}

void Student::display() {
    cout << number << " " << score << endl;
}

void max(Student *p) {
    int maxi = p[0].score;
    int temp = 0;
    for (int i = 1; i < 5; i++) {
        if (p[i].score > maxi) {
            maxi = p[i].score;
            temp = i;
        }
    }
    cout << p[temp].number << " " << maxi << endl;
}

int main() {
    Student stu[5] = {
        Student{1001, 90},
        Student{1002, 80},
        Student{1003, 99},
        Student{1004, 84},
        Student{1005, 85}
    };
    Student *p = &stu[0];
    max(p);
    return 0;
}

核心思路解析

第1步:定义学生类(Student)

定义了学生类,包含学号和成绩两个成员变量,以及一个构造函数和一个显示信息的函数。

第2步:编写最大值函数(max)

该函数接收一个指向学生对象的指针作为参数。通过遍历指针所指向的对象数组,比较每个学生的成绩,找到最高成绩及其对应的学生索引。

第3步:在主函数中调用

创建了一个包含5个学生数据的对象数组,并使用指向第一个元素的指针调用max函数,最终输出最高成绩学生的学号和成绩。

以上就是C++之类和对象课后习题简单实例的详细内容,更多关于C++类与对象教程的资料请关注本站其它相关文章!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。