【问题标题】:Why does this nested for-loop print this? [closed]为什么这个嵌套的 for 循环会打印这个? [关闭]
【发布时间】:2021-10-10 03:58:12
【问题描述】:

我需要弄清楚这个嵌套的 for 循环是如何输出的:

1
2
3
2
4
2
3
5
2
3
4
#include <iostream>
using namespace std;

int main()
{
    int x, y;
    for (x = 1; x <= 5; x++)
    {
      cout << x << endl;
      for (y = 2; y < x; y++)
        cout << y << endl;
    }
}

【问题讨论】:

  • 对于第一个 for 循环的每次迭代,都会执行嵌套的 for 循环。
  • 最好的办法是逐行浏览代码。在第一个for 循环中,x 从 1 开始,然后它打印1,然后进入下一个for 循环,其中y 从 2 开始,然后会发生什么? 2小于1吗?如果没有,会发生什么?等等……
  • 这里最好开始一步调试。

标签: c++ for-loop nested-for-loop


【解决方案1】:

这里的问题是你似乎不明白哪个值是'x',哪个是'y':

您可以通过替换以下代码行轻松理解这一点:

cout << x << endl;

通过

cout << "x: " << x << endl;

和

cout << y << endl;

通过

cout << "y: " << x << endl;

【讨论】:

  • 显示该结果可能会有所帮助
猜你喜欢
  • 2023-01-16
  • 2015-02-12
  • 1970-01-01
  • 2019-08-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多