如何让循环重复输入的行数?

时间:2013-11-02 14:40:39

标签: c++ for-loop

下面的程序将重复宽度,但我也想重复输入高度。

 int main () 
 {

 int height;
 int width;
 int count;
 int hcount;
 string character;

 cout << "input width" << endl;
 cin >> width;
 cout << "input height" << endl;
 cin >> height;
 cout << "input character" << endl;
 cin >> character;

      for (hcount = 0; hcount < height; hcount++);
     {
     for (count = 0 ; count < width; count++) 
     cout << character;
     cout << endl;
     }

我是否需要添加另一个for循环?我无法弄清楚如何重复它。我尝试添加另一个for循环但改变了高度和宽度的顺序:

          for (count = count < width; count++)
              { (count = count < height; hcount++)
                cout < character;
                cout << endl;

但没有运气。

1 个答案:

答案 0 :(得分:2)

for循环对其后面的单个语句进行操作

for (hcount = 0; hcount < height; hcount++);

相当于

for (hcount = 0; hcount < height; hcount++)
    ;

所以你的第一个循环什么都不做。如果删除尾部分号

for (hcount = 0; hcount < height; hcount++)

你会得到你想要的嵌套循环。

另请注意

for (count = 0 ; count < width; count++) 
    cout << character;
    cout << endl;

实际上是

for (count = 0 ; count < width; count++) 
    cout << character;
cout << endl;

如果你想为内循环执行两行,你需要将它们放在大括号{}

for (hcount = 0; hcount < height; hcount++) {
    for (count = 0 ; count < width; count++) {
        cout << character;
        cout << endl;
    }
}