c语言动态链表输出乱码

Gnglas 2019-10-07 02:28:46
#include<stdio.h>
#include<stdlib.h>
typedef struct studens
{
char name[20];
int fen;
struct studens* p;
}stu;
stu* New()
{
stu* p1, * p2, * head;
p1=p2 = (stu*)malloc(sizeof(stu));

scanf_s("%d", &p1->fen); getchar(); fgets(p1->name, 20, stdin);
head = p1;
while (p1->fen != 0)
{
p1=(stu*)malloc(sizeof(stu));

p2->p = p1;
p2 = p1;

scanf_s("%d", &p1->fen); getchar();
fgets(p1->name, 20, stdin);
}
p1= NULL;
return head;
}
void printf_New(stu *asd)
{
while (asd->p != NULL)
{
printf("%d %c\n",asd->fen,asd->name);
asd = asd->p;
}
}
int main()
{
stu* hard;
hard = New();
printf_New(hard);
return 0;


}
...全文
166 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
铖邑 2019-10-07
  • 打赏
  • 举报
回复
引用 2 楼 Gnglas 的回复:
引用 1 楼 qybao 的回复:
printf("%d %c\n",asd->fen,asd->name);改成%s
改成%s他会警告说printf引用字符形式
什么意思?
Gnglas 2019-10-07
  • 打赏
  • 举报
回复
引用 1 楼 qybao 的回复:
printf("%d %c\n",asd->fen,asd->name);改成%s
那愉快的结贴了
Gnglas 2019-10-07
  • 打赏
  • 举报
回复
引用 1 楼 qybao 的回复:
printf("%d %c\n",asd->fen,asd->name);改成%s
好吧你是对的
Gnglas 2019-10-07
  • 打赏
  • 举报
回复
引用 1 楼 qybao 的回复:
printf("%d %c\n",asd->fen,asd->name);改成%s
改成%s他会警告说printf引用字符形式
qybao 2019-10-07
  • 打赏
  • 举报
回复
printf("%d %c\n",asd->fen,asd->name);改成%s

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧