5、设计一个CStudent(学生)类,并使CStudent类具有以下特点: 1)该类有学生姓名、学号、C++程序设计、高等数学、数据结构三门课程的成绩; 2)学生全部信息由键盘输入,以提高程序的适应性; 3)通过成员函数统计学生平均成绩,当课程数量增加时,成员函数无须修改仍可以求取平均成绩; 4)输出学生的基本信息、各科成绩与平均成绩; 5)学生对象的定义采用对象数组实现
时间: 2023-05-29 10:06:19 浏览: 169
#include <iostream>
using namespace std;
class CStudent {
private:
string name; // 学生姓名
string id; // 学号
float score_c; // C程序设计成绩
float score_math; // 高等数学成绩
float score_ds; // 数据结构成绩
int num_courses; // 课程数量,初始值为3
public:
CStudent() { // 默认构造函数,初始化课程数量为3
num_courses = 3;
}
void inputInfo() { // 输入学生信息
cout << "请输入学生姓名:";
cin >> name;
cout << "请输入学号:";
cin >> id;
cout << "请输入C程序设计成绩:";
cin >> score_c;
cout << "请输入高等数学成绩:";
cin >> score_math;
cout << "请输入数据结构成绩:";
cin >> score_ds;
}
float calcAvg() { // 计算平均成绩
return (score_c + score_math + score_ds) / num_courses;
}
void printInfo() { // 输出学生信息
cout << "学生姓名:" << name << endl;
cout << "学号:" << id << endl;
cout << "C程序设计成绩:" << score_c << endl;
cout << "高等数学成绩:" << score_math << endl;
cout << "数据结构成绩:" << score_ds << endl;
cout << "平均成绩:" << calcAvg() << endl;
}
};
int main() {
const int NUM_STUDENTS = 3; // 学生数量
CStudent students[NUM_STUDENTS]; // 学生对象数组
// 输入学生信息
for (int i = 0; i < NUM_STUDENTS; i++) {
cout << "请输入第" << i+1 << "个学生的信息:" << endl;
students[i].inputInfo();
}
// 输出学生信息
for (int i = 0; i < NUM_STUDENTS; i++) {
cout << "第" << i+1 << "个学生的信息如下:" << endl;
students[i].printInfo();
}
return 0;
}
阅读全文