void itoa_rec(unsigned long long value) { char c; if (value >= 10) { itoa_rec(value / 10); } c = value % 10 + '0'; ::write(1, &c, 1); }
int main() { int n, i=0; char s[9]; scanf_s("%d",&n); //printd(n); //printf("\n"); itoa_rec(n, s); printf(s); while(getchar() != '\n'); getchar(); return 0; }
int itoa_rec(int n, char s[]) { int i; if (n / 10) { i = itoa_rec(n / 10, s); } else { i = 0; if (n < 0) { s[i++] = '-'; } } if (n < 0) { n *= -1; } s[i++] = n % 10 + '0'; s[i] = '\0'; return i; }