struct student * insert(struct student * head){? ? struct student *p0,*p1,*p2;? ? p0=(struct student * )malloc(sizeof(LEN));? ? printf("\n輸入所要插入節(jié)點(diǎn)的數(shù)據(jù):");? ? scanf("%s%ld,%ld",&p0->name,&p0->Chinese,&p0->Math,&p0->English);? ? p1=head;? ? if(head==NULL)? ? {? ? ? head=p0;? ? ? p0->next=NULL;? ? }? ? else? ? if(p1->num>p0->num)? ? {? ? p0->next=head;//p0的next指向head? ? head=p0;//head又等于p0,什么鬼,有什么意義? ? }? ? else? ? {? ? while(p1!=NULL)? ? {? ? if(p1->num<p0->num)? ? {? ? p2=p1;? ? p1=p1->next;? ? }? ? else? ? {? ? p0->next=p1;? ? p2->next=p0;? ? break;? ? }? ? }? ? if(p1->next=NULL;? ? {? ? p0->next=NULL;? ? p2->next=p0;? ? }? ? ? ? }? ? return(head); ??}
鏈表的刪除,不解p0->next=head;//p0的next指向head head=p0;//head又等于p0,什么鬼,有什么意義
溯源1
2017-02-01 09:36:05