用于输出行和列中的数字的C ++代码

时间:2014-10-12 00:18:52

标签: c++ loops rows

初学者程序员。我有一个任务,我将使用循环输出数字。输入是输出的大小。第一个分配是垂直输出相同的#s:例如。输入? 5.输出:

12345

12345

12345

12345

12345

我目前的代码不正确,但这就是我所拥有的:

int main(){
unsigned size;
cout <<"Size: ? ";
cin >>size;
cout <<"Numbers Vertically!" <<endl;
for ( unsigned r = 0; r < size; r++ ){
    for ( unsigned c = 0; c < size; c++)
            cout <<size;
    cout <<endl;
}
cout <<endl;
}

3 个答案:

答案 0 :(得分:1)

您需要进行两项更改。

首先是使用cin实际读入输入。 其次是在内循环中打印c+1而不是size

以下是代码:

int main() {
    unsigned size;
    cout <<"Size: ? ";
    cin >> size;                             // Read input size
    cout <<"Numbers Vertically!" <<endl;
    for ( unsigned r = 0; r < size; r++ ) {
        for ( unsigned c = 0; c < size; c++) {
            cout << c+1;                     // Print c+1 instead of size
        }
        cout <<endl;
    }
    cout <<endl;
}

Here is a running example

答案 1 :(得分:0)

您错过了&c; cin&gt;&gt;大小;&#39;指令。

答案 2 :(得分:0)

我更喜欢这种方式。

#include <iostream>

using namespace std;

int main(){
    unsigned size = 10;
    unsigned n = size * size;
    unsigned i = 1;
    for (unsigned r = 0; r < n; r++ ){

        cout << i % (size + 1);
        if (i % (size + 1) == size) {
            cout <<endl;
            i = 1;
        }
        else {
            i++;
        }

    }
    cout <<endl;
    return 0;
}