C语言创建单链表如下:
#include"stdio.h"
#include"stdlib.h"
#include"malloc.h"
#include "iostream.h"
typedef struct node
{
int data
node * next
}node , * List
void create(int n)
{
int c
List s,L
L=(List)malloc(sizeof(node))
L->next=NULL
printf("请输入第1个数据配亩段:")
scanf("%d",&c)
L->data=c
for(int i=2i<耐神=ni++)
{
s=(List)malloc(sizeof(node))
printf("培誉请输入第%d个数据:",i)
scanf("%d",&c)
s->data=c
s->next=L
L->next =s
}
printf("链表创建成功!")
}
void main()
{
int n
printf("请你输入链表的个数:")
scanf("%d",&n)
create(n)
}
判断k<i这个可以放在前面,也是用来判断输入参数是否正确,链表开始应该是1,如果i<1那就不对了。
因为删除节点是一个一个删除的,而c语言里面删除是用free。当删除的时候。指向下一个节点的指针也没了。
所以用u指向当前要删除的节点,p指向下一个节点。
然后释放当前节点。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)