#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;
}
Input
255
Expected Output
FF