Operador de modulo en Objective C

De la "Programación en Objetivo C" (Kochan):

El programa 5.8 solicita al usuario que ingrese un número y luego muestra los dígitos de ese número desde el dígito de más a la derecha hasta el más a la izquierda.

// Program to reverse the digits of a number
#import <Foundation/Foundation.h>

int main (int argc, char *argv[])

{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int number, right_digit;

NSLog (@"Enter your number.");
scanf ("%i", &number);

while ( number != 0 ) {
right_digit = number % 10;
NSLog (@"%i", right_digit);
number /= 10;
}

[pool drain];
return 0;
}

Mi pregunta es: ¿qué sucede cuando el usuario escribe un número de un solo dígito: 1 a 9? No pude encontrar ningún material sobre tal caso. Después de la compilación, el programa simplemente continúa con la devolución de ese dígito. ¿Porqué es eso? Estaba tratando de encontrar un código para esta tarea y pasé literalmente 2 horas, tratando de incorporar bucles y la toma de decisiones para este problema "si el número es un dígito". ¡Y la solución era tan ignorante!

Respuestas a la pregunta(1)

Su respuesta a la pregunta