C 如何在while循环中加入输入值的限制?
我目前正在处理这个while循环,我只想在输入在我设置的定义范围内时激活它。到目前为止,我已经有了这个,但它并没有按照我希望的方式工作。这是我确信是错误的部分,因为出于某种原因,即使我输入的数字超出给定范围>,它也不会跳出while循环C 如何在while循环中加入输入值的限制?,c,C,我目前正在处理这个while循环,我只想在输入在我设置的定义范围内时激活它。到目前为止,我已经有了这个,但它并没有按照我希望的方式工作。这是我确信是错误的部分,因为出于某种原因,即使我输入的数字超出给定范围>,它也不会跳出while循环 while(result >= -10000 && result <= 10000) while(result>=-10000&&result您的while循环语法完全正确,但条件逻辑可能与您需要的相反:当结果无效时,循环将停止 用
while(result >= -10000 && result <= 10000)
while(result>=-10000&&result您的while
循环语法完全正确,但条件逻辑可能与您需要的相反:当结果
无效时,循环将停止
用于输入的典型while
循环具有相反的条件:当结果
变为有效时,循环停止。此外,常见的“读取直到正确”循环使用do
/while
构造,如下所示:
do {
result = ... // read the input into result
...
} while (result < -10000 || result > 100000);
do{
结果=…//将输入读入结果
...
}而(结果<-10000 | |结果>100000);
此循环的post条件为(result>=-10000&&result如果你认为在result
中输入数字的代码是相关的,你是对的。你如何知道result
的实际值是你认为的,同样重要的是,我们如何知道而不看到代码?这个表达式没有错。但是如果result
doe一旦它通过它并进入你认为正在改变它的循环体,它将不受限制地循环(除非中断
或转到
)。你的信心是没有根据的。错误的部分肯定在于你没有向我们展示的内容。值得注意的是,你没有展示结果是如何或何时设置的。