C在数字范围之间循环

时间:2016-06-04 07:28:34

标签: microcontroller c

如果变量介于某个范围之间,如何设置while循环?例如,如果数字是<100或> 1500而不是循环。我尝试了以下但它没有工作......

while (number < 100 || number > 1500);

2 个答案:

答案 0 :(得分:3)

编程条件不像数学一样工作。每次比较都会返回true或false值。如果您需要在一定范围内的号码,则必须设置两个条件:number <= maxnumber >= min。现在你将有两个bool输出,但你需要将它们合并为一个。 &#39;&安培;&安培;&#39;运营商习惯这样做。最终声明如下:(number <= max && number >= min)。当以上两个值都为真时,这将返回true。 (<=>=如果左侧值小于/大于或等于,则返回true。

我建议下次在stackoverflow上发布编程相关问题,重点是编程和软件工程。

答案 1 :(得分:1)

bool belowLowLimit = number<100;
bool aboveHighLimit = number>1500;

while(belowLowLimit || aboveHighLimit){doSuff};

当你不尝试写“聪明”时,看看它是多么容易。码?注意while()行的中断如何允许轻松检查两个bool。另外,请注意您是否真的需要评论或记录此代码。

如果你想做一些复杂的事情,不要这样做。把它分开。

分而治之,不需要SO :)。

[至少你把你的var命名为&#39;数字&#39;而不只是&#39; n&#39;虽然我们真的不知道&#39;数字&#39;代表。 &#39; userInputVal&#39;,例如,本来会更好]