115. Print Binary Representation of an 8-bit or 16-bit Value

Back To All Submissions
Previous Submission
Next Submission

Code

#include <stdio.h>
#include <stdint.h>

void printBinary(uint16_t val)
{
    int bits;

    // Decide whether to print 8 bits or 16 bits
    if(val <= 255)
        bits = 8;
    else
        bits = 16;

    // Print bits from MSB to LSB
    for(int i = bits - 1; i >= 0; i--)
    {
        printf("%d", (val >> i) & 1);
    }
}

int main()
{
    uint16_t val;

    scanf("%hu", &val);

    printBinary(val);

    return 0;
}

Solving Approach

 

 

 

Was this helpful?
Upvote
Downvote