我希望此循环从我设置的值从10减少到0.为什么它会一直持续下去?For循环将永远存在
int lengthString = 10;
for (int j = lengthString; lengthString > 0; j--)
{
cout << j;
}
我希望此循环从我设置的值从10减少到0.为什么它会一直持续下去?For循环将永远存在
int lengthString = 10;
for (int j = lengthString; lengthString > 0; j--)
{
cout << j;
}
更改为
for (int j = lengthString; j > 0; j--)
lengthString
不会在你的循环变化。
此外,您可能要验证lengthString
大于0(您的真实代码)如果你声明j
为int
,因为如果j
是初始化为负数时,循环运行“永远” (直到它溢出并再次减少到0,即)。
哇!我不相信我完全错过了!!!!!!! – mystycs 2011-12-16 20:59:21
你只递减Ĵ,但循环条件不使用Ĵ
你退出条件lengthString > 0
,由于lengthString不在你循环改变你刚刚说while(10 > 0)
,这永远是真的。
我相信你的意思是:
for (int j = lengthString; j > 0; j--)
这应该是你在你的大于,不lengthstring检查学家
for (int j = lengthString; j > 0; j--)
你的环递减j和检查lengthString是> 0
int lengthString = 10;
for (int j = lengthString; j > 0; j--)
{
cout << j;
}
对(INT J = lengthString; J>时= 0; j--)
尝试这一个:
for (int lengthString = 10, *j = &lengthString; lengthString > 0; lengthString--)
{
cout << *j;
}
再看一遍。耐心一点。使用力量。认为。 – 2011-12-16 20:58:13
哈哈哈!这就是最好的答案yetr – mystycs 2011-12-16 20:59:32
Kerrek的评论是成为一名更好的程序员的最佳选择。如果你经常被困在这样的事情上,而没有学会自己找到它们,那么你真的会遇到复杂的事情。 – Almo 2011-12-16 21:00:05