#include#include struct node{ int data; struct node *next; }; int main(){ int i; struct node *head =(struct node *)malloc(sizeof(struct node)),*p,*q,*r,*k,*w; q = head; k = head; for(i = 0; i < 10;i++){ p = (struct node *)malloc(sizeof(struct node)); p->data = i; q->next = p; q = p; }//链表尾插法 q->next = NULL; //链表的插入 k = k->next; int n,t;scanf("%d %d",&n,&t); while(k != NULL){ if(k->data == n){ r = (struct node *)malloc(sizeof(struct node));w = (struct node *)malloc(sizeof(struct node)); r->data = t; w = k->next; k->next = r; r->next = w; break; } k = k->next; } //链表的插入 //链表的删除 struct node *l,*m; l = head; l = l->next; while(l != NULL){ if(l->next->data == n){ m = l->next; l->next =m->next; free(m); break; } l = l->next; } //链表的删除 //链表的建立 head = head->next; while(head != NULL){ printf("%d ",head->data); head = head->next; } //链表的建立 return 0; };



