单链表的插入c语言代码实现
时间: 2024-10-19 22:02:05 浏览: 28
c语言实现单链表 (数据结构与算法 严蔚敏版 作业)完整源码
单链表是一种线性的数据结构,其中每个节点包含两个部分:一个是存储数据的域,另一个是指向下一个节点的指针。在C语言中,我们可以创建一个简单的单链表结构,并实现插入操作。这里是一个基本的插入节点到链表头部的示例:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义链表节点结构体
typedef struct Node {
int data; // 节点的数据
struct Node* next; // 指向下一个节点的指针
} Node;
// 插入函数
void insertNode(Node** head, int value) {
// 创建新节点
Node* newNode = (Node*)malloc(sizeof(Node));
if (!newNode) {
printf("Memory allocation failed.\n");
return;
}
// 将值赋给新节点
newNode->data = value;
newNode->next = *head; // 将新节点指向头节点
// 更新头节点指向新节点
*head = newNode;
}
// 示例如何使用
int main() {
Node* head = NULL; // 初始链表为空
insertNode(&head, 5); // 插入整数5到链表头部
insertNode(&head, 10); // 再次插入整数10
// 打印链表内容
Node* temp = head;
while (temp != NULL) {
printf("%d ", temp->data);
temp = temp->next;
}
printf("\n");
return 0;
}
```
在这个例子中,`insertNode`函数接受链表头指针作为参数,然后动态分配内存、设置新值并调整指针,最后更新链表头。
阅读全文