C ++向后输出数字

时间:2014-09-24 02:12:25

标签: c++

我正在编写一个程序来分隔输入的整数。例如,12345将输出1 2 3 4 5但每个都输入其自己的变量。现在,如果我输入12345,它会给我5 4 3 2 1.任何人都可以帮我弄清楚如何让它以反向输出数字吗?

代码:

#include <iostream>

using namespace std;

int number;

int main()
{
    cout << "Enter number: ";
    cin >> number;
    while (number > 0) {
        int digit = number % 10;
        number = number / 10;
        cout << digit << " ";
    }
    return 0;
}

2 个答案:

答案 0 :(得分:2)

你可以使用递归。

void PrintNumber(int number)
{
    int digit = number % 10;
    number /= 10;

    if (number > 0)
        PrintNumber(number);

    cout << digit << " ";
}

答案 1 :(得分:0)

不要将您的号码存储在int中,而是将其存储在字符串中。

#include <iostream>
#include <string>

using namespace std;

string number;

int main()
{
    cout << "Enter number: ";
    cin >> number;
    for (int i=0; i<number.size(); i++) {
        char digit = number[i];
        cout << digit << " ";
    }
    return 0;
}