谭浩强课本上的一个原题,有些疑问:
谭浩强课本上的一个原题,有些疑问:struct student *insert (struct student *head ,struct student *stu)
{struct student *p0,*p1,*p2;
p1=head;
p0=stud;
if(head==NULL){head=p0;p0->next=NULL;}
else
{while((p0->num>p1->num)&&(p1->next!=NULL))
{p2=p1;p1=p1->next;}
if(p0->num<=p1->num)
{if(head==p1)head=p0;
/*插到第一个结点前,使p0作为头结点,但没指明p0下一个指向谁,这样写也对吗?*/
/*我觉得应该加上p0->next=p1这一句?*/
else p2->next=p0;
p0->next=p1;}
{p1->next=p0;
p0->next=NULL;}}
n=n+1;
return head;
}