#include <stdio.h> #include <stdint.h> void print_hex(uint16_t num) { // Your logic here if (num == 0) printf("0"); char ans[4]; int8_t idx = 3; while (num > 0) { uint8_t val = (num&0xF); if (val > 9) { ans[idx--] = (char)'A'+val-10; } else { ans[idx--] = (char)'0'+val; } num >>= 4; } for (int8_t i = idx+1; i < 4; i++) { printf("%c", ans[i]); } } int main() { uint16_t num; scanf("%hu", &num); print_hex(num); return 0; }
Test Cases
Test Results
Input
255
Expected Output
FF