Convert Integer to String

Code

#include <stdio.h>

void print_integer_as_string(int num) {
    // Your logic here
    // case num = 0
    if (num == 0)
    {
        printf("0");
        return;
    }

    // handle neagetive
    int is_negative  = 0;
    if (num < 0)
    {
        is_negative = 1;
        num = -num; // convert to positive
    }

    char buffer[12];
    int idx = 0;

    while (num != 0)
    {
        int digit = num % 10;
        buffer[idx++] = ('0' + digit);
        num /= 10;
    }
    if (is_negative)
    {
        buffer[idx++] = '-';
    }

    for (int i = idx - 1; i >= 0; i--)
    {
        printf("%c", buffer[i]);
        if (i > 0) printf(" ");
    }
}

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

Solving Approach

 

 

 

Upvote
Downvote
Loading...

Input

123

Expected Output

1 2 3