c++学生信息管理系统,用链表代码
时间: 2024-09-09 12:16:15 浏览: 100
在C++中,创建一个简单的学生成绩管理系统,我们可以使用链表数据结构来存储学生的个人信息,如姓名、ID和成绩。这里是一个基本的概念性示例:
```cpp
#include <iostream>
using namespace std;
// 定义一个结构体表示学生信息
struct Student {
string name;
int id;
float score; // 成绩
struct Node* next; // 链接指针
};
// 创建链表节点
struct Node {
Student studentInfo;
Node* next;
};
// 插入新学生到链表
void insert(Student s, Node** head) {
Node* newNode = new Node();
newNode->studentInfo = s;
newNode->next = *head;
*head = newNode;
}
// 查找特定学生并打印其信息
void searchByName(string name, Node* head) {
for (Node* curr = head; curr != nullptr; curr = curr->next) {
if (curr->studentInfo.name == name) {
cout << "Name: " << curr->studentInfo.name << ", ID: " << curr->studentInfo.id << ", Score: " << curr->studentInfo.score << endl;
return;
}
}
cout << "Student not found." << endl;
}
// 主函数演示操作
int main() {
// 初始化链表头部为空
Node* head = nullptr;
// 添加一些学生信息
insert({"张三", 001, 85}, &head);
insert({"李四", 002, 90}, &head);
// 搜索并打印学生信息
searchByName("张三", head);
return 0;
}
```
在这个例子中,`insert`函数用于添加新学生,`searchByName`函数用于查找并显示指定姓名的学生信息。请注意,这只是一个基础的示例,实际应用可能需要更复杂的功能,如删除、更新等,并可能使用文件I/O来持久化存储数据。
阅读全文