Do-while不起作用

时间:2015-08-30 16:01:44

标签: c++

我的循环不起作用

#include <iostream>
using namespace std;
int main()
{
int a,b,c;
cin >> a >> b;
do
{
    c=a-b;
}
while(c>=b);
cout << c;
}

当我输入5和3时它工作但当我尝试输入更大的数字,如61和3时,它不起作用。没有输出。

3 个答案:

答案 0 :(得分:1)

你在做什么

c = a - b;

每次迭代,无需更改ab。因此,在第二个示例中,c始终等于58,大于b == 3,因此循环永远不会退出。

不幸的是我无法告诉你如何解决这个问题,因为你没有说明这段代码应该做什么。

答案 1 :(得分:0)

插入行&#c;&gt;&gt; a&gt;&gt; B;&#39;进入循环do-while。如果不是循环没有意义,你应该通过条件更改它。

答案 2 :(得分:0)

无论循环执行多少次,a,b,c的值都不会改变。在c(a-b)大于或等于b的情况下,循环永不退出。这就是为什么你没有得到a = 61和b = 3的输出。