用C++写一个高校学生查询系统,写出代码
时间: 2024-01-28 10:03:21 浏览: 26
好的,以下是一个简单的高校学生查询系统的C++代码:
```c++
#include <iostream>
#include <string>
#include <vector>
using namespace std;
// 学生信息类
class Student {
public:
string name; // 姓名
int age; // 年龄
string major; // 专业
double gpa; // GPA
// 构造函数
Student(string n, int a, string m, double g) {
name = n;
age = a;
major = m;
gpa = g;
}
// 输出学生信息
void display() {
cout << "姓名:" << name << endl;
cout << "年龄:" << age << endl;
cout << "专业:" << major << endl;
cout << "GPA:" << gpa << endl;
}
};
// 学生信息管理类
class StudentManager {
private:
vector<Student> students; // 学生列表
public:
// 添加学生信息
void addStudent(Student s) {
students.push_back(s);
}
// 根据姓名查询学生信息
Student* getStudentByName(string name) {
for (int i = 0; i < students.size(); i++) {
if (students[i].name == name) {
return &students[i];
}
}
return NULL;
}
// 显示所有学生信息
void displayAllStudents() {
for (int i = 0; i < students.size(); i++) {
students[i].display();
cout << endl;
}
}
};
int main() {
// 创建学生信息管理对象
StudentManager manager;
// 添加学生信息
Student s1("张三", 20, "计算机科学与技术", 3.5);
manager.addStudent(s1);
Student s2("李四", 21, "软件工程", 3.8);
manager.addStudent(s2);
Student s3("王五", 19, "信息安全", 3.2);
manager.addStudent(s3);
// 查询学生信息并显示
string name;
cout << "请输入要查询的学生姓名:" << endl;
cin >> name;
Student* s = manager.getStudentByName(name);
if (s == NULL) {
cout << "未找到该学生!" << endl;
} else {
s->display();
}
// 显示所有学生信息
cout << "所有学生信息如下:" << endl;
manager.displayAllStudents();
return 0;
}
```
这个系统包含了一个学生信息类 `Student` 和一个学生信息管理类 `StudentManager`。在 `main` 函数中,我们创建了一个 `StudentManager` 对象,然后添加了三个学生信息。接着,用户可以通过输入学生姓名来查询该学生的信息,也可以显示所有学生的信息。