#include <stdio.h> #include <stdint.h> void print_binary(uint16_t val) { // Your logic here char out[17]; char *ptr = out; if (val <= 255) { for (int i = 7; i>=0; i--) *(ptr++) = ((val >> i) & 0x01) + '0'; } else{ for (int i = 15; i>=0; i--) *(ptr++) = ((val >> i) & 0x01) + '0'; } *ptr = '\0'; //terminate printf("%s",out); } int main() { uint16_t val; scanf("%hu", &val); print_binary(val); return 0; }
Test Cases
Test Results
Input
10
Expected Output
00001010