如何显示每行的具体元素数量?

时间:2016-01-01 13:28:04

标签: c++

大家好,我想解决一个问题

编写一个C ++程序,允许用户输入一个数字,然后生成其乘法表,将其格式化为5列和20行。 与程序的交互应如下所示(仅显示前4行)

 Enter a number 7:

 7   14   21   28   35
 42  49  56  63  70
 77  84  91  98  105

这就是我试过的

#include <iostream>

using namespace std;

int main()
{
    int n, mul;
    cout << "Enter a number" << endl;
    cin >> n;

    for(int i = 1; i <= 100; i++) {
        mul = n * i;
        cout << mul << "\t";
    }

    return 0;
}

只留下5列和20行的部分

3 个答案:

答案 0 :(得分:2)

嗯,您需要确定何时放置\t以及何时将\n放在号码后面。您希望在每隔五个数字后加\n,否则\t

提示:有一个算术运算符可以帮助你。

另一种解决方案是使用嵌套循环。

答案 1 :(得分:1)

也许你想要这个?!

#include <iostream>

using namespace std;

int main()
{
int n,mul;
cout << "Enter a number" << endl;
cin >> n;

for(int i=1;i<=100;i++){
    mul=n*i;
    cout << mul << setw(2);
    if(i%5 == 0) // new line after 5 col
     cout << endl;

}


    return 0;
}

答案 2 :(得分:0)

遍历每一行。每行内循环通过每列。在每一行的末尾打印一个EOLN字符\n,表示该行的结尾。如果你是新手,可以获得一些不错的C ++书籍,如The C++ Programming Language, 4th Edition或阅读一些教程。

setw()函数可用于指示&#34; cell&#34;的宽度。表:

cout << setw(n) << mul

如果输出不够长,这会导致程序通过添加尾随空格来确保输出长度至少为n。但是,如果输出的长度大于n,则无效。为了避免这种情况,n应该是最高mulitple + 1的长度。