创建一个长度为5的单链表(每个结点的值由键盘输入),并输出。c语言
时间: 2024-09-25 20:16:13 浏览: 59
在C语言中,你可以通过以下几个步骤创建一个长度为5的单链表,并允许用户输入节点值:
1. 定义结构体 `Node` 来表示链表的节点,包含一个整数值 `data` 和指向下一个节点的指针 `next`。
```c
typedef struct Node {
int data;
struct Node* next;
} Node;
```
2. 初始化一个动态链表的头指针 `head` 为 `NULL`。
```c
Node* head = NULL;
```
3. 使用循环,让用户输入5个节点的值,同时创建新的节点并将它们连接到链表上。
```c
for (int i = 0; i < 5; i++) {
int input;
printf("请输入第%d个节点的值: ", i + 1);
scanf("%d", &input);
// 创建新节点
Node* newNode = (Node*)malloc(sizeof(Node));
newNode->data = input;
// 如果链表为空,将新节点作为头节点
if (head == NULL) {
head = newNode;
} else {
// 否则将新节点添加到链表尾部
Node* current = head;
while (current->next != NULL) {
current = current->next;
}
current->next = newNode;
}
}
```
4. 最后遍历链表,打印出所有节点的值。
```c
if (head != NULL) {
Node* temp = head;
while (temp != NULL) {
printf("%d -> ", temp->data);
temp = temp->next;
}
// 输出最后一个节点后不需要额外的 "->"
printf("\n");
} else {
printf("链表为空\n");
}
```
阅读全文