单链表类型定义如下:
typedef struct node{
DataType data;
struct node *next;
}LinkNode;
typedef LinkNode *Linklist;
函数f30的功能是删除带头结点的单链表中data值为x的全部结点,请在空白处填上适当内容将算法补充完整。
void f30(Linklist head,DataTypex)
{
LinkNode *p,*q,*s;
p=head;q=(1);
while(q!=NULL)
if((2)){
s=q;q=q->next;
p->next=q;free(s);
}
else{
p=q;
q=(3);
}
}
【正确答案】:(1)p->next
(2)q->data==x
(3)q->next