初始化一个数据元素为整型的链表,通过控制台 scanf函数将每个节点赋值,并输出该链表复每个结点的值
时间: 2024-05-13 08:19:35 浏览: 113
控制台 生成链表
以下是使用 C 语言实现的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义链表节点结构体
struct Node {
int data; // 数据域
struct Node* next; // 指针域
};
int main() {
int n; // 链表节点个数
printf("请输入链表节点个数:");
scanf("%d", &n);
// 创建链表头结点
struct Node* head = (struct Node*)malloc(sizeof(struct Node));
head->next = NULL;
// 输入每个节点的值,并插入链表尾部
printf("请依次输入每个节点的值:");
struct Node* tail = head;
for (int i = 0; i < n; i++) {
int val;
scanf("%d", &val);
// 创建新节点
struct Node* newNode = (struct Node*)malloc(sizeof(struct Node));
newNode->data = val;
newNode->next = NULL;
// 将新节点插入链表尾部
tail->next = newNode;
tail = newNode;
}
// 遍历链表,并输出每个节点的值
printf("该链表的数据元素为:");
struct Node* p = head->next;
while (p != NULL) {
printf("%d ", p->data);
p = p->next;
}
printf("\n");
// 释放链表内存
p = head;
while (p != NULL) {
struct Node* temp = p;
p = p->next;
free(temp);
}
return 0;
}
```
示例输出:
```
请输入链表节点个数:4
请依次输入每个节点的值:1 3 5 7
该链表的数据元素为:1 3 5 7
```
阅读全文