All submissions

Convert Integer to String

Code

#include <stdio.h>

void print_integer_as_string(int num) {
    // Handle 0 and negative numbers
    if (num == 0) {
        printf("0");
        return;
    }

    if (num < 0) {
        printf("- ");
        num = -num; // make it positive for processing
    }

    int digits = 0;
    int num_cpy = num;

    // Count digits
    while (num_cpy > 0) {
        digits++;
        num_cpy /= 10;
    }

    char arr[digits];
    int idx = 0;

    // Store digits in reverse order
    while (num > 0) {
        arr[idx++] = (num % 10) + '0';
        num /= 10;
    }

    // Print digits in correct order with spaces
    for (int i = digits - 1; i >= 0; i--) {
        printf("%c", arr[i]);
        if (i > 0) {
            printf(" ");
        }
    }
}

int main() {
    int num;
    scanf("%d", &num);
    print_integer_as_string(num);
    return 0;
}

Solving Approach

 

 

 

Loading...

Input

123

Expected Output

1 2 3