如何用C++编程来创建一个表示学生并设置其属性(姓名和三门课程成绩)的类?该类应具备方法来分别获取单科成绩、计算总成绩以及平均分,并能成功输出这些信息。
时间: 2024-11-20 17:34:27 浏览: 17
在C++中,我们可以定义一个名为`Student`的类来表示学生及其属性。下面是如何实现这个类的一个示例:
```cpp
#include <iostream>
#include <string>
class Student {
private:
std::string studentID; // 学生学号
std::string name; // 姓名
double mathScore; // 数学成绩
double englishScore; // 英语成绩
double cLanguageScore; // C语言成绩
public:
// 构造函数
Student(std::string id, std::string n, double m, double e, double cl)
: studentID(id), name(n), mathScore(m), englishScore(e), cLanguageScore(cl) {}
// 获取单科成绩的方法
double getMathScore() const { return mathScore; }
double getEnglishScore() const { return englishScore; }
double getCLanguageScore() const { return cLanguageScore; }
// 计算总成绩和平均分的方法
double calculateTotalScore() const {
return mathScore + englishScore + cLanguageScore;
}
double calculateAverageScore() const {
if (calculateTotalScore() == 0) {
return 0;
} else {
return calculateTotalScore() / 3;
}
}
// 输出学生信息的方法
void displayInfo() const {
std::cout << "学生学号: " << studentID << "\n";
std::cout << "姓名: " << name << "\n";
std::cout << "数学成绩: " << mathScore << "\n";
std::cout << "英语成绩: " << englishScore << "\n";
std::cout << "C语言成绩: " << cLanguageScore << "\n";
std::cout << "总成绩: " << calculateTotalScore() << "\n";
std::cout << "平均分: " << calculateAverageScore() << "\n";
}
};
int main() {
Student student("001", "张三", 90, 85, 95);
student.displayInfo();
return 0;
}
```
上述代码中,我们定义了一个`Student`类,包含了学生的学号、姓名和三门课程的成绩。类内定义了获取单科成绩的方法,以及计算总成绩和平均分的方法。最后有一个`displayInfo`方法用于输出学生的基本信息。
在`main`函数中,我们创建了一个`Student`对象,并调用了它的各种方法来展示如何使用这个类。
阅读全文