填空题
函数deletelist的功能:在head指向的单向链表中查找是否出现多个x值相同的结点。如果发现存在这样的结点,则保留第一个结点,删除其他重复出现的结点。
typedef struct point /*链表结点数据结构定义*/
{int x;
struct point*next;
} 1(27) 2 ;
POT *deletelist(POT *head)
{
POT *p,*p1,*p2;
p= 3(28) 4;
while(p->next!=NULL)
{p1=p;
p2=p->next;
while(p2!=NULL)
{
if(p2->x==p->x)
{p1->next= 5(29) 6;
free(p2);
p2=p1->next;
}
else
{p1=p2;
p2=p2->next;
}
}
p= 7(30) 8;
}
return head;
}
【正确答案】
1、(27)POT
(28)head
(29)p2->next
(30)p->next
【答案解析】