动态链表中,循环输入scanf(“%d %d\n”,p->high,p->weight);中为什么添加了\n要输入两次0才会结束循环

来源:5-2 Linux C 动态数据结构-动态链表

xsxxsx

2016-10-06 23:21

57f66b9900018f0605000144.jpg

57f66b9a0001032a05000318.jpg

循环输入scanf(“%d %d\n”,p->high,p->weight);中为什么添加了\n要输入两次0才会结束循环


写回答 关注

2回答

  • 慕学渣
    2016-10-20 16:52:26

    此处的/n不表示等待换行符,而是读取并放弃连续的空白字符

    善用百度啊骚年

    慕学渣

    好像没答完,自己再补一下,输入的空白字符将被抛弃,等待非空白字符,输入的正常的字符将会放在缓冲区,也不会被赋值给变量

    2016-10-20 16:54:49

    共 1 条回复 >

  • xsxxsx
    2016-10-06 23:27:45

    如果把\n去掉,就正常了,如果没去掉,就需要两次输入使p->high 为0 才能退出循环

    自己想不明白,求大神

Linux C语言结构体

C语言的深入,帮助小伙伴们进一步的理解C语言,赶紧看过来

118294 学习 · 162 问题

查看课程

相似问题