dígitos de la función recursiva de un entero decimal positivo en orden inverso c ++

Tengo una tarea para escribir una función recursiva que escribe los dígitos de un entero positivo en orden inverso. Mi problema es que la función no muestra el reverso correctamente. Sé que se supone que debo usar% o 10 cuando se muestra el número y / o 10 cuando en la llamada recursiva se supone que el caso base es <10. Aquí está mi código.

#include <iostream>
using namespace std;

int reverse(int,int);

int main()
{
    int number;
    int n;

    cout << " Enter number to reverse." << endl;
    cin >> number;
    cout << reverse(number % 10,0);

    return 0;
}//end main

int reverse(int number,int n)
{

    if(n < 10)
    {
        return n;
    }
    else
    {
        return reverse(number/10,n);
    }
}// end reverse

Respuestas a la pregunta(5)

Su respuesta a la pregunta