用c语言生成一个至少包含有5个元素的单链表,元素值由计算机输入
时间: 2024-10-08 19:24:49 浏览: 10
在C语言中,我们可以使用结构体表示链表节点,并通过指针链接它们。下面是一个简单的例子,展示如何创建一个包含五个元素的单链表,元素值由用户输入:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义链表节点结构体
typedef struct Node {
int data; // 节点数据
struct Node* next; // 指向下一个节点的指针
} Node;
// 创建新节点并插入链表
Node* createNode(int value) {
Node* newNode = (Node*)malloc(sizeof(Node));
if (newNode != NULL) {
newNode->data = value;
newNode->next = NULL;
return newNode;
}
printf("Memory allocation failed!\n");
return NULL;
}
// 主函数
int main() {
Node* head = NULL; // 链表头指针
int i;
// 输入五个元素并添加到链表
for (i = 0; i < 5; ++i) {
int input;
printf("Enter element %d: ", i + 1);
scanf("%d", &input);
Node* newNode = createNode(input);
if (head == NULL) {
head = newNode;
} else {
Node* temp = head;
while (temp->next != NULL) {
temp = temp->next;
}
temp->next = newNode;
}
}
// 打印链表
Node* temp = head;
while (temp != NULL) {
printf("%d -> ", temp->data);
temp = temp->next;
}
printf("NULL\n");
return 0;
}
```
在这个程序中,我们首先定义了一个`Node`结构体,然后创建一个`createNode`函数用于动态分配内存并初始化新节点。在主函数`main`中,用户会被提示输入五个整数,然后依次添加到链表中。