Convert Integer to String

Code

#include <stdio.h>

void reverse(char *s,int len){
    for(int i=0;i<len/2;i++){
        char temp = s[i];
        s[i] = s[len-i-1];
        s[len-i-1] = temp;
    }
}

void print_integer_as_string(int num) {
    int flag = 1;
    if(num<0){
        flag = -1;
        num = -num;
    }
    char s[100];
    int k = 0;

    if(num==0){
        s[k++] = '0';
        s[k] = '\0';
    }else{
        while(num>0){
            int rem = num%10;
            s[k++] = rem + '0';
            num/=10;
        }
        if(flag==-1){
            s[k++] = '-';
        }
        s[k] = '\0';

        reverse(s,k);
    }

    for(int i=0;i<k;i++){
        printf("%c ",s[i]);
    }
}

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