Il primo 0 fa interpretare il numero in base ottale, il secondo non viene considerato perché non ha valore, l'unica cifra significativa è 1.
Devi utilizzare delle stringhe:codice:#include <stdio.h> #include <string.h> int main(void) { int i; char n[20]; char inv[20]; scanf("%s", n); for(i = 0; i < strlen(n); i++) { inv[strlen(n)-i-1] = n[i]; } inv[strlen(n)] = '\0'; printf("%s", inv); return 0; }