C语言:写一个函数,实现单链表的节点删除功能

来源:百度知道 编辑:UC知道 时间:2024/06/03 02:18:30
1 写一个函数,实现单链表的节点删除功能。
2 实现循环链表的打印函数。
3 写两个函数分别实现双向链表的插入与删除功能。
2 实现循环链表的打印函数。
3 写两个函数分别实现双向链表的插入与删除功能

这2个包含了吗

struct student *del(struct student *head,long num)
{
struct student *p1,*p2;
long s=num;
int n=0;
p1=p2=head;
if(head==NULL)
{
goto s;
}
else
{
if(s==p1->num)
{
p1=p1->next;
n=n+1;
head=p1;
}
else
{
p1=p1->next;
while(p1!=NULL)
{
if(s==p1->num)
{
p2->next=p1->next;
n=n+1;
break;
}
p2=p2->next;
p1=p1->next;
}
}
}
s:
return(head);
}删除单向链表结点!