编写student类,成员变量有ID(学号)、math(数学成绩)、english(英语成绩)、sum(总成绩),成员函数函数有构造函数、setStu:设置函数,用于修改对象、showStu:显示函数,用于输出显示。 在主函数中声明一个长度为5的对象数组,输入对象的值,按照sum值降序排列,并输出。 【样例输入】 1 80 80 2 90 90 3 75 75 4 75 80 5 92 90 【样例输出】 5 92 90 182 2 90 90 180 1 80 80 160 4 75 80 155 3 75 75 150
时间: 2023-06-11 09:07:36 浏览: 134
以下是student类的实现代码:
```
#include <iostream>
#include <algorithm>
using namespace std;
class Student {
private:
int ID;
int math;
int english;
int sum;
public:
Student(int id, int m, int e): ID(id), math(m), english(e) {
sum = math + english;
}
void setStu(int id, int m, int e) {
ID = id;
math = m;
english = e;
sum = math + english;
}
void showStu() {
cout << ID << " " << math << " " << english << " " << sum << endl;
}
int getSum() const {
return sum;
}
};
bool cmp(const Student& s1, const Student& s2) {
return s1.getSum() > s2.getSum();
}
int main() {
Student students[5] = { {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0} };
for (int i = 0; i < 5; i++) {
int id, math, english;
cin >> id >> math >> english;
students[i].setStu(id, math, english);
}
sort(students, students + 5, cmp);
for (int i = 0; i < 5; i++) {
students[i].showStu();
}
return 0;
}
```
以上代码的主要思路是定义一个Student类,包含成员变量ID、math、english、sum,以及构造函数、setStu函数和showStu函数。其中,构造函数用于初始化对象,setStu函数用于修改对象,showStu函数用于输出对象的值。另外,还定义了一个cmp函数,用于实现对象按照sum值降序排列。在主函数中,首先声明一个长度为5的对象数组,然后依次输入对象的值,再按照sum值进行排序,并输出排好序的对象。
阅读全文