34. Count Set Bits in an 8-bit Register

Back To All Submissions
Previous Submission
Next Submission

Code

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

int count(uint8_t reg) {
	uint8_t cnt = 0;
	while (reg) {
		cnt = (reg & 0x01) ? cnt + 1 : cnt;
		reg >>= 1;
	}
	return cnt;
}

int main() {
	uint8_t reg;
	scanf("%hhu", &reg);
	printf("%d", count(reg));
}

Solving Approach

 

 

 

Was this helpful?
Upvote
Downvote