#include <stdio.h>
#include <stdlib.h>
struct Node//定义链表
{
int data;
struct Node* next;
};
struct Node* creat(struct Node *head)//创建链表
{
struct Node *p1, *p2;
p2 = p1 =(struct Node*) malloc (sizeof (struct Node));
scanf("%d",&p1 ->data);
p1 ->next = NULL;
while(p1 ->data > 0)
{
if (head == NULL)
head = p1;//空表,接表头
else
p2 -> next = p1;//非空表,接表尾
p2 = p1;
p1 =(struct Node*) malloc (sizeof (struct Node));//创建新的节点
scanf("%d",&p1 ->data);
}
p2 ->next = NULL;
return head;
}
void print(struct Node *head)//输出链表
{
struct Node *temp;
temp=head;
for (;temp != NULL;temp = temp ->next)
printf("%d ",temp ->data);
printf("\n");
}
bool insert_list(struct Node *head, int pos, int val)
{
int i
c语言单向列表的创建、插入、删除、排序和遍历。。。
最新推荐文章于 2023-06-14 21:51:38 发布
这篇博客介绍了如何使用C语言实现单向链表的操作,包括创建链表、在指定位置插入元素、删除元素、排序链表以及遍历链表并打印所有元素。通过示例代码详细展示了这些操作的过程,涵盖了链表基本操作的完整流程。
摘要由CSDN通过智能技术生成