120. Convert Integer to Hex String Without sprintf or itoa functions

Back To All Submissions
Previous Submission
Next Submission

Code

#include <stdio.h>
#include <stdint.h>

void print_hex(uint16_t num) {
    // Your logic here
    char hex[] = "0123456789ABCDEF";
    char buffer[5] ;
    int count;
    if(num == 0){
        printf("0");
        return;
    }

    while(num>0){
        buffer[count++] = hex[num % 16];
        num = num/16;
    }
    count--;
    while(count>=0){
        printf("%c",buffer[count--]);
    }

}

int main() {
    uint16_t num;
    scanf("%hu", &num);
    print_hex(num);
    return 0;
}

Solving Approach

 

 

 

Was this helpful?
Upvote
Downvote