C语言怎么创建链表插头
时间: 2023-06-13 11:07:39 浏览: 97
链表建立、删除 程序
要创建链表插头,首先需要定义一个结构体来表示链表中的每一个节点,包括节点的内容和指向下一个节点的指针。然后可以通过动态内存分配来创建新的节点,并将新节点的指针指向链表的头部,即可完成链表的插头操作。
以下是一个示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
struct node {
int data;
struct node* next;
};
void insert_at_head(struct node** head_ref, int data) {
struct node* new_node = (struct node*) malloc(sizeof(struct node));
new_node->data = data;
new_node->next = (*head_ref);
(*head_ref) = new_node;
}
int main() {
struct node* head = NULL;
int i;
for (i = 1; i <= 5; i++)
insert_at_head(&head, i);
printf("Created Linked List: ");
struct node* ptr = head;
while (ptr != NULL) {
printf("%d -> ", ptr->data);
ptr = ptr->next;
}
printf("NULL");
return 0;
}
```
在这个示例代码中,我们定义了一个名为“node”的结构体,来表示链表中的每一个节点,包括节点的内容(data)和指向下一个节点的指针(next)。我们还编写了一个名为“insert_at_head”的函数来插入新节点,并将新节点的指针指向链表头部。
在主函数中,我们使用循环来创建链表,并最终输出整个链表的内容。由于我们是从头部开始插入新节点的,因此输出的链表也是从头部开始的,打印结果如下:
```
Created Linked List: 5 -> 4 -> 3 -> 2 -> 1 -> NULL
```
这就是使用C语言创建链表插头的基本步骤。
阅读全文