(1) 设计一个名为Score 的类,表示成绩,这个类包括: 两个int 型数据成员:math 和eng,分别表示数学成绩和英语成绩一个带两个形参的构造函数,用给定的分数初始化math 和eng成员函数show(),输出数学成绩和英语成绩 (2) 设计一个名为Student 的类,表示学生,这个类包括: 两个数据成员:stuid(int 型,表示学号)和mark(Score 对象) 一个带三个形参的构造函数,对数据成员进行初始化
时间: 2024-02-22 17:54:43 浏览: 93
好的,这是一个关于面向对象设计的问题。下面是对应的C++代码:
```cpp
#include <iostream>
using namespace std;
class Score {
private:
int math;
int eng;
public:
Score(int m, int e) {
math = m;
eng = e;
}
void show() {
cout << "math: " << math << ", eng: " << eng << endl;
}
};
class Student {
private:
int stuid;
Score mark;
public:
Student(int id, int m, int e) : stuid(id), mark(m, e) {}
};
int main() {
Student s1(1001, 90, 80);
return 0;
}
```
在上述代码中,我们首先定义了一个名为Score的类,表示学生成绩。这个类包括两个私有成员变量math和eng,以及一个构造函数和一个show()函数。
接着,我们定义了一个名为Student的类,表示学生。这个类包括两个私有成员变量stuid和mark(表示成绩,类型为Score对象),以及一个构造函数。
在main()函数中,我们创建了一个Student对象s1,并用构造函数对其进行初始化。这个构造函数接收三个参数:学生的学号和数学、英语成绩。在构造函数体内,我们通过初始化列表的方式,分别对stuid和mark成员进行初始化。
至此,我们完成了一个简单的面向对象设计。当然,在实际应用中,我们可能需要对这些类进行进一步扩展,以满足更复杂的需求。
阅读全文