Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 如何在while循环中加入输入值的限制?_C - Fatal编程技术网

C 如何在while循环中加入输入值的限制?

C 如何在while循环中加入输入值的限制?,c,C,我目前正在处理这个while循环,我只想在输入在我设置的定义范围内时激活它。到目前为止,我已经有了这个,但它并没有按照我希望的方式工作。这是我确信是错误的部分,因为出于某种原因,即使我输入的数字超出给定范围>,它也不会跳出while循环 while(result >= -10000 && result <= 10000) while(result>=-10000&&result您的while循环语法完全正确,但条件逻辑可能与您需要的相反:当结果无效时,循环将停止 用

我目前正在处理这个while循环,我只想在输入在我设置的定义范围内时激活它。到目前为止,我已经有了这个,但它并没有按照我希望的方式工作。这是我确信是错误的部分,因为出于某种原因,即使我输入的数字超出给定范围>,它也不会跳出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一旦它通过它并进入你认为正在改变它的循环体,它将不受限制地循环(除非
中断
转到
)。你的信心是没有根据的。错误的部分肯定在于你没有向我们展示的内容。值得注意的是,你没有展示结果是如何或何时设置的。