统计一个整数二进制1的个数

大家都知道一个十进制数通过模10,除10就可以得到一个整数的每一位数。那么同理,二进制数也一样可以通过%2,/2得到这个二进制数的每一位。想明白这点这题就基本解决了。

#include <stdio.h>


int get_one(int  a)
{
	int count = 0;

	while (a)
	{
		if (a % 2 == 1)
		{
			count++;
		}
		a /= 2;
	}
	
	return count;
}


int main()
{
	int a ;
	scanf_s("%d", &a);

	int res = get_one(a);
	printf("%d", res);

	return 0;
}

猜你喜欢

转载自blog.csdn.net/juggte/article/details/114956780
今日推荐