我的循环不起作用
#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时,它不起作用。没有输出。
答案 0 :(得分:1)
你在做什么
c = a - b;
每次迭代,无需更改a
或b
。因此,在第二个示例中,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的输出。