c++ 定义学生类和管理员类。以学生类为基础,派生出本科生类和研究生类。学生包括学号、姓名、性别、年龄、专业、班级、成绩等成员;研究生还包括导师等信息,本科生还包括学制(4年或3年)等信息。
时间: 2023-08-11 11:08:35 浏览: 102
学生信息管理系统C++语言
5星 · 资源好评率100%
好的,以下是 C++ 中定义学生类和管理员类的代码:
```cpp
#include <iostream>
#include <string>
using namespace std;
class Student{
private:
string id; // 学号
string name; // 姓名
string gender; // 性别
int age; // 年龄
string major; // 专业
string cls; // 班级
float score; // 成绩
public:
// 构造函数
Student(string id, string name, string gender, int age, string major, string cls, float score)
:id(id), name(name), gender(gender), age(age), major(major), cls(cls), score(score) {}
// 成员函数
void display(){
cout << "学号:" << id << endl
<< "姓名:" << name << endl
<< "性别:" << gender << endl
<< "年龄:" << age << endl
<< "专业:" << major << endl
<< "班级:" << cls << endl
<< "成绩:" << score << endl;
}
};
class Graduate: public Student{ // 研究生类
private:
string advisor; // 导师
public:
Graduate(string id, string name, string gender, int age, string major, string cls, float score, string advisor)
:Student(id, name, gender, age, major, cls, score), advisor(advisor) {}
void display(){
Student::display();
cout << "导师:" << advisor << endl;
}
};
class Undergraduate: public Student{ // 本科生类
private:
int year; // 学制
public:
Undergraduate(string id, string name, string gender, int age, string major, string cls, float score, int year)
:Student(id, name, gender, age, major, cls, score), year(year) {}
void display(){
Student::display();
cout << "学制:" << year << "年" << endl;
}
};
class Administrator{
private:
string username; // 用户名
string password; // 密码
public:
// 构造函数
Administrator(string username, string password)
:username(username), password(password) {}
// 成员函数
bool login(string username, string password){
if(this->username == username && this->password == password){
cout << "管理员登录成功!" << endl;
return true;
}
else{
cout << "管理员登录失败!" << endl;
return false;
}
}
};
```
以上代码定义了一个 `Student` 类和一个 `Administrator` 类。`Student` 类包含了学生的基本信息,如学号、姓名、性别、年龄、专业、班级和成绩等成员,同时定义了 `display()` 成员函数用于输出学生信息。由 `Student` 类派生出了 `Graduate` 类和 `Undergraduate` 类,分别表示研究生和本科生,并且在这两个类中增加了研究生的导师和本科生的学制等信息。
另外,还定义了一个 `Administrator` 类来表示管理员,管理员有自己的用户名和密码,可以通过 `login()` 成员函数进行登录验证。
阅读全文