NODE deletenode(NODE *head,int num)
{
NODE *p,*q;
if(head==NULL)
return head;
q=NULL;
p=head;
while(p)
{
if(p->data==num)
{
if(q==NULL)
{
head=head->link;
free(p);
p=head;
}
else
{
q->link=p->link;
free(p);
p=q->link;
}
}
else
{
q=p;
p=p->link;
}
}
return head;
}