下面这是出错的程序:
void selectnum(stu *head)
{ int num,j;
stu *p=head;
printf("输入要查询的学号\n");
scanf("%d",&num);
while(p->num!=num)
{p=p->next;
if (p=NULL) {printf("未查询到该学生\n");return;}
}
printf("信息如下:\n");
printf("学号\t 姓名\t电话\t\t邮箱\t 地址\t生日(年 月 日) \n");
printf("%d %s %s %s %s %d %d %d\n",p->num,p->name,p->call,p->email,p->address,p->b.year,p->b.month,p->b.day);
printf("输入:1继续.\n2结束.\n");
scanf("%d",&j);
if(j==1)
return;
else
baymanu();
}
输入学生信息创建链表后,查询第一个学生是没问题的,但是如果查询后面的学生就会报错,提示内存为不可读,新手不才,一直找不到错误所在,望各路大神赐教
单链表内存不可读是怎么回事?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
threenewbee 2016-11-30 14:16关注if (p=NULL)
->
if (p==NULL)本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报