请问建立链表并赋值,再遍历输出,输出的结果带有一串乱码是为什么呢?

建立链表并赋值后遍历输出,输出的结果带有一串乱码是为什么呢?
(刚学链表懵懵懂懂求解答,谢谢~)

代码如下——

#include
#include

struct node{
int data;//数据域
struct node* next;//指针域
};
int main()
{
int n,i;//确定链表长度
struct node head=(struct node)malloc(sizeof(struct node));//创建头结点
struct node p=(struct node)malloc(sizeof(struct node));//申请第一个结点
head->next=p;//连接头结点和首结点
p->next=NULL;
printf("please input the length:\n");
scanf("%d",&n);
printf("input the number:\n");
for(i=0;i {
struct node* s=(struct node*)malloc(sizeof(struct node));//创建并给结点s分配内存
scanf("%d",&s->data);//尾插法
p->next=s;
s->next=NULL;
p=s;
}
p=head;
while(p!=NULL)//遍历输出
{
printf("%-10d",p->next->data);
p=p->next;
}
return 0;
}

结果:
图片说明

1个回答

struct node p=(struct node)malloc(sizeof(struct node));//申请第一个结点
head->next=p;//连接头结点和首结点
p->next=NULL;

第一个结点的data未赋值

xxs_s
xxs_s 谢谢~
8 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

4
交换二叉树中每个结点的左孩子和右孩子C++语言
3
线索二叉树,怎么可能把二叉树变为双向链表呢?
3
Java该怎么遍历链表数据结构
1
用链表类完成一元多项式的加法 为什么vs在重载赋值运算符的时候断点,说head访问权限冲突?
1
C语言多项式加减运算(用链表)
1
输入若干个正整数(输入-1为结束标志),建立一个单向链表,将其中的偶数值结点删除后输出。
1
C语言多项式加减运算(用链表)?
2
C语言链表插入问题 插入节点到头节点之前去 遍历后发现只能显示插入的那个节点。
0
二叉树的链表存储,线索二叉树的算法问题,怎么使用C语言实现节点遍历
4
问一个很愚蠢的基础问题,p=p->next链表循环里,为什么这样不会覆盖掉链表的值啊
1
单链表的一些操作,没有输出。不知道哪里错了!!!求大哥帮忙!
1
为什么我的链表在运行时会卡死或者无法存取信息?
1
C语言使用头插法简历双向链表,并实现对称输出
1
C语言求助:输入一个字符串,将其中的字母字符输入一个链表,将其中的数字字符输入另一个链表。
0
链表实现的图和树的遍历的算法,利用C语言的程序的设计来实现
0
链表解决这里的路径的一个遍历的算法问题的做法怎么实现,用C语言的程序设计语言
0
链表排序出了问题,求大佬帮忙看看
1
链表操作中即使函数传入的是链表指针,若根节点没有改变,链表也会改变?
0
在单链表中统计某区域内的元素,将获得元素插入新单链表,并打印新链表元素在原链表中的序号