退出带负整数的while循环

时间:2011-10-13 23:18:44

标签: c numbers while-loop

当用户输入任意大小的负数时,我想退出while()。当用户输入负数时,我需要在循环开始时需要什么样的条件才能退出循环?

4 个答案:

答案 0 :(得分:1)

使用if条件知道数字是否小于 0 。如果是,只需在其中使用break语句,这将使您退出循环。 Learn more about break statement from MSDN.

答案 1 :(得分:1)

嗯,什么是负数?这是一个小于零的数字(称为x),或符号x < 0。如果x小于零,那么这是真的。如果没有,那就错了。

你可以无休止地循环并在满足这个条件时休息:

while (1) {
  if (x < 0) {
    break;
  }

  ...
}

但我更喜欢在while循环本身中使用与该条件相反的方法:

 while (x >= 0) {
   ...

当条件为真时,循环继续。如果它是假的(并且你的原始条件为真,那么这两个相反),循环就会中断。

答案 2 :(得分:1)

int i = -1;
do
{
    i = magic_user_input();
    //simple enough? get a decent programming book to get the hang of loops
}
while(i > -1)

编辑:对不起,我的错误:'我'没有被正确宣布:)现在应该可以使用

答案 3 :(得分:0)

不要将变量定义为无符号变量。正如其他答案中所建议的,使用if语句并使用if语句中断。

示例:

int main(void)
{
 int i;
 while(1){
 /*here write an statement to get and store value in i*/ 
  if(i<0)
  {
    break;
  }
 /*other statements*/
  return(0);
  }
 }