. 定义一个学生成绩类: (1)类名:Student (2)静态属性(数据成员,私有数据):学号(No,int类型)、姓名(Name,字符数组类型)、数学成绩(Math,double类型)、物理成绩(Phi,double类型)、数据结构成绩(Data,double类型)、总分(Sum,double类型)。 (3)动态属性(函数成员,公有成员):无参构造函数,有参构造函数,拷贝构造函数,析构函数,定义能输入学生成绩的成员函数Input(),能计算学生总分的成员函数GetSum(),能显示学生成绩的成员函数Show()。 (4)编写主函数测试。
时间: 2023-04-07 17:03:38 浏览: 150
面向设计c++类与对象的使用
可以回答这个问题。
以下是定义学生成绩类的代码:
```cpp
#include <iostream>
#include <cstring>
using namespace std;
class Student {
private:
int No;
char Name[20];
double Math;
double Phi;
double Data;
double Sum;
public:
Student() {}
Student(int no, const char* name, double math, double phi, double data) {
No = no;
strcpy(Name, name);
Math = math;
Phi = phi;
Data = data;
Sum = Math + Phi + Data;
}
Student(const Student& other) {
No = other.No;
strcpy(Name, other.Name);
Math = other.Math;
Phi = other.Phi;
Data = other.Data;
Sum = other.Sum;
}
~Student() {}
void Input() {
cout << "请输入学号:";
cin >> No;
cout << "请输入姓名:";
cin >> Name;
cout << "请输入数学成绩:";
cin >> Math;
cout << "请输入物理成绩:";
cin >> Phi;
cout << "请输入数据结构成绩:";
cin >> Data;
Sum = Math + Phi + Data;
}
double GetSum() {
return Sum;
}
void Show() {
cout << "学号:" << No << endl;
cout << "姓名:" << Name << endl;
cout << "数学成绩:" << Math << endl;
cout << "物理成绩:" << Phi << endl;
cout << "数据结构成绩:" << Data << endl;
cout << "总分:" << Sum << endl;
}
};
int main() {
Student s1(1, "张三", 90, 80, 70);
s1.Show();
Student s2;
s2.Input();
s2.Show();
return 0;
}
```
运行结果:
```
学号:1
姓名:张三
数学成绩:90
物理成绩:80
数据结构成绩:70
总分:240
请输入学号:2
请输入姓名:李四
请输入数学成绩:85
请输入物理成绩:75
请输入数据结构成绩:65
学号:2
姓名:李四
数学成绩:85
物理成绩:75
数据结构成绩:65
总分:225
```
阅读全文