数据结构:用C++建立一个学生信息管理系统顺序表
时间: 2024-09-23 09:04:49 浏览: 72
在C++中创建一个简单的学生信息管理系统,我们可以使用顺序表(如数组或动态数组),每个元素代表一个学生的信息。下面是一个基本的例子,展示了如何使用数组存储和管理学生的姓名、学号和成绩:
```cpp
#include <iostream>
using namespace std;
// 定义学生结构体
struct Student {
string name;
int id;
float score;
};
class StudentInfoManager {
private:
// 定义顺序表,假设最大容量为MAX_SIZE
const static size_t MAX_SIZE = 100;
Student students[MAX_SIZE]; // 学生信息数组
size_t count; // 当前学生数量
public:
// 构造函数
StudentInfoManager() : count(0) {}
// 添加新学生
void addStudent(const string& name, int id, float score) {
if (count < MAX_SIZE) {
students[count++] = {name, id, score};
cout << "添加学生成功:" << name << endl;
} else {
cout << "已满,无法添加更多学生!" << endl;
}
}
// 打印所有学生信息
void displayStudents() {
for (size_t i = 0; i < count; ++i) {
cout << "学生 " << i+1 << ": " << students[i].name << ", 学号: " << students[i].id << ", 成绩: " << students[i].score << endl;
}
}
// 其他操作,例如删除、查找等...
};
int main() {
StudentInfoManager manager;
manager.addStudent("张三", 1001, 85.5);
manager.addStudent("李四", 1002, 90.0);
manager.displayStudents();
return 0;
}
```
这个例子中的`StudentInfoManager`类包含了基本的添加和显示学生信息的功能。你可以根据需要扩展它,比如提供搜索功能、更新成绩等功能。记住,如果实际应用中有大量的数据,使用动态数组(如`std::vector<Student>`)会更合适,因为它可以自动调整大小。
阅读全文