164342146 发表于 2022-8-6 17:21:43

关于scanf与getchar()

这是S1E14的作业
为什么这里scanf后面没有接getchar程序却能正常运行

临时号 发表于 2022-8-6 17:42:24

为什么要接getchar()

164342146 发表于 2022-8-6 17:47:42

临时号 发表于 2022-8-6 17:42
为什么要接getchar()

不然回车的话第二次运行的scanf不就接收回车了吗

临时号 发表于 2022-8-6 18:23:43

164342146 发表于 2022-8-6 17:47
不然回车的话第二次运行的scanf不就接收回车了吗

scanf它规定了它只接受%f也就是浮点数,自然会跳过\n
你说的这种情况一般发生在接受字符串上

164342146 发表于 2022-8-6 19:09:12

临时号 发表于 2022-8-6 18:23
scanf它规定了它只接受%f也就是浮点数,自然会跳过\n
你说的这种情况一般发生在接受字符串上

我有点不理解,回车不是浮点数为什么scanf第二次接收回车之后为什么s还等于1?如果输入其他字符的话就应该是s=0结束了啊,求解惑

临时号 发表于 2022-8-6 19:17:16

164342146 发表于 2022-8-6 19:09
我有点不理解,回车不是浮点数为什么scanf第二次接收回车之后为什么s还等于1?如果输入其他字符的话就应 ...

你的scanf会去读一个浮点数,但你没有给它,也就是说输入流中没有浮点数,那它就只能随便给你一个值了
页: [1]
查看完整版本: 关于scanf与getchar()