Count Set Bits in an 8-bit Register

Code

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

uint8_t count_setbits(uint8_t reg){
    uint8_t sum = 0;
    while(reg){
        sum += reg & 1u; 
        reg >>= 1; 
    }
    return sum; 
}

int main(){
    uint8_t reg; 
    scanf("%hhu",&reg);
    printf("%hhu",count_setbits(reg));
    return 0;
}

Solving Approach

 

 

 

Upvote
Downvote
Loading...

Input

0

Expected Output

0