实验内容:从键盘输入10个整数,用单链表存储这个数据。每次将数据插入链表的头部。并在输入完毕后,将这10个数据输出。
时间: 2024-09-28 21:15:54 浏览: 40
实验内容涉及到的是基本的数据结构操作,主要步骤如下:
1. **创建链表结构**:首先,需要定义一个链表节点结构,包含一个整数值和指向下一个节点的指针。
```c++
typedef struct Node {
int data;
struct Node* next;
} Node;
```
2. **初始化链表**:由于我们不知道具体的值,所以初始时链表头节点设为空。
```c++
Node* head = NULL;
```
3. **输入数据**:使用循环读取用户从键盘输入的10个整数,并为每个数字创建一个新的链表节点,将其data成员设置为输入值,next指针初始化为头节点,然后将新节点设为当前头节点。
```c++
for (int i = 0; i < 10; i++) {
int input;
scanf("%d", &input);
Node* newNode = (Node*)malloc(sizeof(Node));
newNode->data = input;
newNode->next = head;
head = newNode;
}
```
4. **输出数据**:遍历链表,逐个打印节点的值。这里通常会使用递归或迭代的方式,因为链表的特性使得从头开始遍历更为合适。
```c++
void printList(Node* node) {
if (node != NULL) {
printf("%d ", node->data);
printList(node->next);
}
}
// 调用函数输出链表
printList(head);
```
5. **结束程序**:最后记得释放不再使用的内存,避免内存泄漏。
```c++
while (head != NULL) {
Node* temp = head;
head = head->next;
free(temp);
}
```
阅读全文