#include <stdio.h>
#include <stdint.h>
void print_hex(uint16_t num) {
// Your logic here
int n;
n = num;
int rem;
char x;
char str[5];
int i;
if(n==0)printf("0");
else {
while(n){
rem = n % 16;
if(rem <10) {
str[i] = rem + '0';
i++;
}
else if(rem >= 10) {
x = 'A' + (rem - 10);
str[i] = x;
i++;
}
n = n/16;
}
str[i] = '\0';
}
int len;
for(len=0;str[len] != '\0';len++);
int l;
int r;
l = 0;
r = len-1;
while(l<r){
char temp;
temp = str[l];
str[l] = str[r];
str[r] = temp;
l++;
r--;
}
printf("%s",str);
}
int main() {
uint16_t num;
scanf("%hu", &num);
print_hex(num);
return 0;
}
Input
255
Expected Output
FF