从今天开始,定时做几道题,为找工作做准备。
上题:
解题思路:位运算
C语言中,位运算是一种非常便捷的运算过程。我们可以将输入的正整数的每一位与1作&运算,为1则计数器++。
AC代码:
#include "stdio.h"
int bitcount(int n)
{
unsigned int c = 0;
while (n>0)
{
if ((n & 1) == 1)
{
++c;
}
n=n >> 1;
}
return c;
}
int main()
{
int i;
scanf("%d", &i);
printf("%d", bitcount(i));
return 0;
}