#include <stdio.h> char digits[10] ={'0','1','2','3','4','5','6','7','8','9'}; void print_integer_as_string(int num) { // Your logic here int MAXTEN = 1000000000; int digit; if (num == 0) { printf("0"); return; } if (num < 0) { printf("%c ", '-'); num= -num ; } while ((int) ((num/MAXTEN) == 0)) { MAXTEN = MAXTEN / 10; } while (MAXTEN > 0) { digit= (int) (num/MAXTEN); printf("%c ", digits[digit]); num = num - digit * MAXTEN; MAXTEN = MAXTEN /10; } } int main() { int num; scanf("%d", &num); print_integer_as_string(num); return 0; }
Find the leading one dividing the number by the largest power of ten in an int.
Test Cases
Test Results
Input
123
Expected Output
1 2 3