链表输出问题
main()
{
int i,j;
link head,ptr;
ptr=head=(link)malloc(sizeof(node));
for(i=0;i<5;i++)
{
scanf("%d",&ptr->num);
ptr->next=(link)malloc(sizeof(node));
ptr=ptr->next;
if(i==4)
ptr->next=NULL;
}
printf("\n");
ptr=head;
while(ptr!=NULL)
{
printf("%d\t",ptr->num);
ptr=ptr->next;
}
getch();
}
1 2 3 4 5后回车输出1 2 4 5 -2558
偶搞不明白while语句里哪里出了问题;若将原程序该为while(ptr->next!=NULL)则输出1 2 3 4 5;我觉得改了以后
的输出为1 2 3 4才对,怎么反而就是正确答案了呢
望路过的高手指点一二 谢谢