打印'*'的图案

时间:2016-08-01 23:24:03

标签: c++ cout

我担心我的问题对这个论坛没有帮助,但我真的找不到答案。首先,抱歉超级新手问题。

假设我被要求使用for循环创建* s的三角形模式。

我的代码是:

for (row=1;row<=10;row++){
for (col=1;col<=row;col++){
cout << "*";
}
cout << "\n";
}
cout << "\n";

用于打印* s的三角形形状。但是,解决方案建议如下:

for ( int row = 1; row <= 10; ++row ) {
for ( int col = 1; col <= row; ++col )
cout << '*';
cout << '\n';
}
cout << '\n';

两者似乎都产生了相同的结果,但是怎么样?我以为'++ col'将初始值加1,然后用**开始打印。

此外,使用''而不是“”之间有什么好处/差异?我回过头来看看我是否错过了教科书,但我找不到原因。此外,我在谷歌搜索中找不到合适的答案。

请帮忙。

1 个答案:

答案 0 :(得分:1)

for循环的结构是

for(int i=0; i<10; i++)

int i=0;是初始化程序。这只在for循环开始之前运行一次。

i<10这是在每个循环之前评估的条件。

i++是事后的想法。 每次循环后运行

因此,在您的示例中,即使是,++row++col也会增加变量。直到循环体之后才会发生。

因此,使用++rowrow++对最终结果没有任何影响。