采用尾插法,建立一个包含5个节点的单链表,每个结点包括:学号,姓名,性别,年龄。然后遍历该链表,进行数据的输出。
时间: 2024-12-02 21:18:07 浏览: 15
首先,我们用尾插入法创建一个包含5个节点的单链表,每个节点代表一个学生的信息:
```cpp
#include <iostream>
using namespace std;
struct StudentNode {
int id;
string name;
char gender;
int age;
StudentNode* next;
StudentNode(int id, string name, char gender, int age)
: id(id), name(name), gender(gender), age(age), next(nullptr) {}
};
StudentNode* createLinkedList() {
StudentNode* head = nullptr;
StudentNode* tail = nullptr;
for (int i = 1; i <= 5; ++i) {
StudentNode* newNode = new StudentNode(i, "Student" + to_string(i), 'M', 20 + i);
if (head == nullptr) {
head = newNode;
tail = newNode;
} else {
tail->next = newNode;
tail = newNode;
}
}
return head;
}
void printList(StudentNode* node) {
while (node != nullptr) {
cout << "学号: " << node->id << ", 姓名: " << node->name << ", 性别: " << node->gender << ", 年龄: " << node->age << endl;
node = node->next;
}
}
int main() {
StudentNode* list = createLinkedList();
printList(list);
deleteList(list); // 注意释放内存防止内存泄漏
return 0;
}
```
`createLinkedList` 函数用于构建链表,`printList` 函数用于遍历链表并打印每个学生的数据。
阅读全文