永发信息网

下面的程序段怎么总是执行L==NULL 啊?

答案:1  悬赏:10  手机版
解决时间 2021-05-14 11:42
  • 提问者网友:美人性情
  • 2021-05-13 20:03

Link_list(TuShu L,TSnode *s)
{ TuShu p,q,r;
p=L;
if(L==NULL)
{s->next=L;
L=s;
}
else
{ while(s->num>p->num&&p!=NULL)
{ q=p;
p=p->next;
}
s->next=q;
q=s;
}
r=L;
printf("Number Name Writer Price Publishment ISBN\n");
while(r!=NULL)
{printf("%-8ld %s %s %-3.2f %s %s\n",r->num,r->name, r->writer,r->price, r->ISBN, r->publishment);
r=r->next;
}
}
最佳答案
  • 五星知识达人网友:十年萤火照君眠
  • 2021-05-13 20:47

Link_list(TuShu L,TSnode *s)


函数的传入是值传递,因此


L=s;


这行无意义,所以L永远得不到正确的结果。

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯