表格顺序相反

时间:2018-12-15 13:50:31

标签: c++

我正在做基本编程,以相反的顺序打印n的表,其中n是一个正整数。 这是我的方法:

#include <iostream>
#include <cmath>
using namespace std;

int main()
{
    int n;

    cin >> n;
    int multiplier = 10;
    while (multiplier--)
    {
       n = n*multiplier;
       cout << n << endl;
    }
}

但是它的输出不是我期望的。我可以知道代码中的问题在哪里吗?另外,请提供一些建议,因为两个月后我将接受MS实习面试。

我的输入是

2

输出结果是

18
144
1008
6048
30240
120960
362880
725760
725760
0

1 个答案:

答案 0 :(得分:0)

我想您可能不想每次迭代都更改n,所以建议您将计算分配给另一个(作用域)变量:

int main()
{
    int n;

    cin >> n;

    int multiplier = 10;
    while (multiplier--)
    {
        int nn = n*multiplier;
        cout << nn << endl;
    }
}

另一件事:您可能希望实际看到第一个打印的10 * n(而不是结尾的“ 0”),因此也可以将n乘以multiplier+1(或执行改为do-while循环。