de *)malloc(sizeof(struct LNode));Р s->data=x;Р q=*p;Р if(i==1)Р {Р s->next=q;Р *p=s;Р }Р elseР {Р while(j<i-1&&q->next!=null)Р {Р q=q->next;Р j++;Р }Р if(j==i-1)Р {Р s->next=q->next;Р q->next=s;Р }Р else Р printf("位置参数不正确!\n");Р }?Р}Рvoid dele(struct LNode **p,int i)Р{Р?int j=1;Р struct LNode *q=*p,*t;Р if(i==1)Р {Р t=q;Р *p=q->next;Р }Р elseР {Р while(j<i-1&&q->next!=null)Р {Р q=q->next;Р j++;Р }Р if(q->next!=null&&j==i-1)Р {Р t=q->next;Р q->next=t->next;Р }Р else Р printf("位置参数不正确!\n");Р }Р if(t!=null)?Р free(t);Р}Рvoid display(struct LNode **p)Р{?Р?struct LNode *q;Р q=*p;Р printf("单链表显示: ");Р if(q==null)Р printf("链表为空!");Р else if (q->next==null)Р printf("%d\n",q->data);Р elseР {Р while(q->next!=null)Р {Р printf("%d->",q->data);Р q=q->next;Р }Р printf("%d",q->data);Р?}Р printf("\n");Р}