struct student * insert(struct student * head){ struct student *p0,*p1,*p2; p0=(struct student * )malloc(LEN); printf("\n输入所要插入节点的数据:"); scanf("%ld,%f",&p0->num,&p0->score); p1=head; if(head==NULL) { head=p0; p0->next=NULL; } else if(p1->num>p0->num) { p0->next=head;//head=p0;能不能改成这样 head=p0; //p0->next=p1; } else { while(p1!=NULL) { if(p1->num<p0->num) { p2=p1; p1=p1->next; } else { p0->next=p1; p2->next=p0; break; } } if(p1==NULL) { p0->next=NULL; p2->next=p0; } } return(head); }
添加回答
举报
0/150
提交
取消