#include<stdio.h>
#include<stdlib.h>
typedef struct Link{
int elem;
struct Link *next;
}link;
link *create(){
link *head, *p, *tail;
int count, i;
printf("请输入数据总数:");
scanf("%d", &count);
if(count<0){
printf("错误,总数不应该小于0\n");
exit(1);
}
head=(Link*)malloc(sizeof(Link));
head->next=NULL;
tail=head;
for(i=0; i<count;i++)
{
p=(Link*)malloc(sizeof(Link));
printf("工号:");
scanf("%d", &p->elem);
p->next=NULL;
tail->next=p;
tail=p;
}
printf("链表创建成功!\n");
return head;
}
void print(Link *head){
int len=0;
Link *p=head->next;
while(p){
printf("%d\n",p->elem);
p=p->next;
//通过链表遍历,用len记录链表长度 ,并传入到head结点的数据域中
len++;
}
head->elem=len;
printf("数据总数:%d\n",head->elem);
}
Link *insertLink(Link *head){
Link *node=(Link*)
单链表的前插法和后插法
最新推荐文章于 2023-04-07 16:28:11 发布
本文详细介绍了单链表的基本操作,包括前插法和后插法。前插法是在节点前插入元素,后插法则是在节点后添加元素。通过实例解析了这两种插入方式的具体实现步骤,帮助理解链表数据结构的操作。
摘要由CSDN通过智能技术生成