为什么第一图出错,而第二图却能正确执行。将第二图(阳阳买苹果问题)改为printf("%d",n); 输出的n值依然超出100,这是为什么??
%f 浮点,,,实数。
这个就是原因。。内存存放格式不一样,,读取不一样,,,结果就变了
追问不对哦,兄弟
追答看清题目了,,,,你的问题是 因为循环变量 大于条件却 得到正确的答案,,其实你还是不知道while 的运算流程图
第二图(阳阳买苹果)n在其中n值没超过100??
追答没超过怎么退出循环呢?
追问嗯,我知道了,谢谢了。这个问题纠结了很久……
嗯,这个我懂了,但是第二图得出的结果是正确的。如果按照第一图的逻辑,第二图岂不是n值也超过了100??
追答肯定啊,n小于100 根本不会跳出while循环,你printf("%d",n); 看看就知道了
追问既然超出了100那<100的判条件岂不是没用了……
追答while不是用来限定b的值,只是负责判断,如果你要限定b的值
应该在对b赋值之前先判断if(b<100)