#include <stdio.h> #include <math.h> void print_integer_as_string(int num) { if(num == 0){ printf("0"); } else{ char num_as_string[10] = {0}; int len = (int)(log10(num < 0 ? num * -1 : num) + 1); if(num < 0) num_as_string[0] = '-'; len = num < 0 ? len + 1 : len; int end_index = num < 0 ? 1 : 0; num_as_string[len] = '\0'; for(int i = len-1; i >= end_index; i--){ num_as_string[i] = (num > 0 ? (num % 10) : (num % 10)*-1) + '0'; num /= 10; } int i = 0; while(num_as_string[i] != '\0'){ printf("%c ",num_as_string[i++]); } } } int main() { int num; scanf("%d", &num); print_integer_as_string(num); return 0; }
Test Cases
Test Results
Input
123
Expected Output
1 2 3