请问大家为什么这样设置的单向链表无法正常输出
void CreateList_L(LinkList L) //逆顺位输入n个值,建立单向表{
LinkList p;
int i ;
for (i = 2; i > 0; i--)//每次循环创造一个节点;
{
p = (LinkList*)malloc(sizeof(LNode));
scanf_s("%d",&(p->data));
p->next = L;
L = p;
}
L->next = NULL;
}
int main()
{
LinkList L,p ;
L = (LinkList*)malloc(sizeof(LNode));
p = L;
int n = 2, i;
CreateList_L(L);
for (i = 1; i < 2; i++)
{
printf("%d", p->data);
p = p->next;
}
return 0;
}
本帖最后由 jackz007 于 2019-10-17 11:55 编辑
你在 main() 里建立的首节点 L 完全没有赋任何值,哪里来的 p -> data 和 p -> next ?,又哪里来的链表?
楼主,请解释一下,什么是 "逆顺位" ? 本帖最后由 kin3z 于 2019-10-20 14:45 编辑
看题目,搂住的思路是不是想创建一个链表,对另一个链表作反向顺序的复制?
请放上题目和你的完整代码吧,否则能帮的有限。
页:
[1]