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