用c++输入一个学生的6门课程的成绩,求出平均分,并输出6门课程名称和成绩及平均分。 要求:定义一个student类,并以个人姓名的第一个字母定义一个student类的对象。
时间: 2024-09-30 15:14:36 浏览: 61
为了满足这个需求,你可以创建一个`Student`类,包含姓名、六门课程的成绩数组以及计算平均分的方法。这里是一个简单的示例:
```cpp
#include <iostream>
#include <string>
class Course {
public:
std::string name;
int score;
// 构造函数和获取设置方法可以省略,因为这里只用于演示
};
class Student {
private:
std::string name;
Course courses[6];
public:
// 使用姓名首字母构造函数
Student(std::string firstName) : name(firstName.substr(0, 1)) {}
void inputScores() {
for (int i = 0; i < 6; ++i) {
std::cout << "请输入第" << (i + 1) << "门课程名称:";
std::cin >> courses[i].name;
std::cout << "请输入分数:";
std::cin >> courses[i].score;
}
}
double calculateAverageScore() {
int total = 0;
for (const auto& course : courses) {
total += course.score;
}
return static_cast<double>(total) / 6;
}
void displayResults() {
std::cout << "\n姓名:" << name << "\n";
for (int i = 0; i < 6; ++i) {
std::cout << "课程名称:" << courses[i].name << ", 成绩: " << courses[i].score << "\n";
}
std::cout << "平均分: " << calculateAverageScore() << "\n";
}
};
int main() {
std::string firstName;
std::cout << "请输入学生姓名首字母:";
std::cin >> firstName;
Student student(firstName);
student.inputScores();
student.displayResults();
return 0;
}
```
在这个程序中,用户会被提示输入每个学生姓名的首字母,然后会按照提示输入每门课程的成绩。`calculateAverageScore`方法会计算所有课程的平均分,最后`displayResults`方法会显示学生姓名、各门课程的名称和成绩,以及平均分。
阅读全文