Capisco. Però la tua soluzione si limita ad un intero di massimo 4 cifre. E se l' intero fosse di 8 cifre ? Inoltre noto che prima dividi il numero per un multiplo di 10 e poi salvi il resto e nel modo in cui procedi alla prima divisione ottieni già la prima cifra, perdendo le altre come parte decimale.
n1 = temp1 / 1000; /*es: se hai 1234 / 1000 ===> 1,234 ===> n1 = 1 */
temp2 = temp1 % 1000; /*temp2 = 1 */
n2 = temp2 / 100; /* 1 / 100 ===> 0,01*/
...