不要在心理上理解这个内部循环是如何工作的

Don't mentally understand how this inner loop works

本文关键字:何工作 工作 循环 内部 心理上      更新时间:2023-10-16

我知道输出,但我不明白如何增加"*"。
这是代码:

#include <iostream>
using namespace std;
int main()
{
    int i,j,rows;
    cout<<"Enter the number of rows: ";
    cin>>rows;
    for(i=1;i<=rows;++i)
    {
        for(j=1;j<=i;++j)
        {
           cout<<"* ";
        }
        cout<<"n";
    }
    return 0;
}

如果你让我理解这个内循环,我会很高兴,我知道外层打印了一条新线,我的问题:这个内循环如何增加星星?

假设rows5这意味着outer loop将旋转5次。

for(i=1;i<=rows;++i) /** 1<=5 , 2<=5 .. 5<=5 **/

内循环是for(j=1;j<=i;++j)的,对于每个i值,它将从1旋转到i

i=1:内循环条件将为

  • 1<=1 => 1 次打印*并打印n并移回外循环

i=2:内循环条件将为

  • 1<=2 =>打印*
  • 2<=2 => 打印*并打印n并移回外循环

i=3:内环条件将为

  • 1<=3 => 打印*

  • 2<=3 =>打印*

  • 3<=3 =>打印*并打印n并移回外循环,依此类推。

我的建议是在控制台上编写程序之前做一些文书工作。

如果我们输入行 == 5,那么我将从 1 迭代到 5。然后在每个内部循环中,j 将从 1 迭代到 i,因此 1->1、1->2、1->3、1->4、1->5。因此,您可以获得输出。