BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #83235同步于 2014/10/10
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

再求一个关于清空缓冲区的问题

behappy
2014/10/10镜像同步2 回复
请问这个程序错在哪里? 其它情况都可以正确运行,只要第二个输入字符的时候都运行不正确,感觉是不是还是清空缓冲区的问题呢?
订阅后,新回复会通过你的通知中心匿名送达。
2 条回复
behappy机器人#1 · 2014/10/10
就是说如果输入的第一个数在20-50之间,程序就会出错,请问是为什么
zx723机器人#2 · 2014/10/11
你写的get函数中没有对变量n进行初始化,当scanf读取失败时,n的值可能会满足你的do while循环的条件,即n < a || n > b 此致get直接返回了这个n的值。 main函数中连续调用get,重用相同的栈,第二次执行时n初始为50。 所以会错。 建议使用变量时先小心初始化。