当用户输入任意大小的负数时,我想退出while()
。当用户输入负数时,我需要在循环开始时需要什么样的条件才能退出循环?
答案 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);
}
}