如何使用“ while循环”打印正确的输出?

时间:2020-04-27 10:43:57

标签: c++ arrays loops while-loop

预期输出为2000,但在1980年停止。

注意:执行从 20 开始,而不是从 0 作为 int开始 我= 1

代码:

#include <iostream>
using namespace std;
int main() {
  const int iarraysize = 100;
  int i = 1;
  int iarray[iarraysize];
  while (i < iarraysize) {
    iarray[i] = 20 * i;
    cout << iarray[i++] << "\n";
  }
}

3 个答案:

答案 0 :(得分:4)

数组从0开始,在其大小之前结束。

但是您不需要数组。

#include <iostream>
int main()
{
    int limit = 100;
    int i = 1;
    while (i <= limit)
    {
        std::cout << (i++ * 20) << "\n";
    }
}

答案 1 :(得分:3)

数组从0到99,从1开始,仅到99(99 * 20 = 1980)。

您期望使用2000,但没有iarray[100](数组超出范围)。

答案 2 :(得分:3)

变量 while (true) { if (Mouse.RightButton == MouseButtonState.Pressed) { } } 的最后一个小于100的值是99。因此20 * 99等于i

如果您想获得2000,请像这样重写循环

1990
相关问题