#include <stdio.h> #include <stdint.h> void reverse(char *s,int len){ int start= 0; int end = len-1; while(start<end){ char temp = s[start]; s[start] = s[end]; s[end] = temp; start++; end--; } } void print_hex(uint16_t num) { char str[100]; int k = 0; if(num==0){ str[k++] = '0'; str[k] = '\0'; }else{ while(num>0){ int rem = num%16; if(rem<9){ str[k++] = rem + '0'; }else{ str[k++] = (rem - 10) + 'A'; } num/=16; } str[k] = '\0'; reverse(str,k); } printf("%s",str); } int main() { uint16_t num; scanf("%hu", &num); print_hex(num); return 0; }
Test Cases
Test Results
Input
255
Expected Output
FF