虽然循环不会继续

时间:2016-10-23 20:13:22

标签: c++ loops while-loop

int Day = 20;
while (Day >= 1)
{
   cout << Day << " ";
   userNum = Day / 2;
   cin >> Day;
}

我不明白为什么循环不起作用。我希望输出为20 10 5 2 1

任何帮助,如有可能,请说明。

2 个答案:

答案 0 :(得分:2)

我不明白cin的目的是什么,但是如果你想要问题所要求的输出:

// Example program
#include <iostream>
#include <string>

using std::cout;
using std::endl;

int main()
{
 int Day = 20;
  while (Day >= 1)
  {
    cout << Day << " ";
    Day /= 2;
  }
}

Date达到1或小于1时,您可以看到停止。并将其重复除以2。首先,它变成20;然后你把它除以2,它达到10;然后你再次除以2,它达到5;然后5/2是2.5但是轮到2;然后2/2为1,最后退出程序。

Here已编译。

答案 1 :(得分:0)

试试这个

int Day = 20;
while (Day >= 1)
{
    cout << Day << " ";
    Day = Day / 2;      
}