Description:统计 整型值的 二进制 为1 的个数;
Input: 任意整型数;
Output:二进制的个数;
Sample Input : 4
Input: 任意整型数;
Output:二进制的个数;
Sample Input : 4
Sample Output: bitcount=1
Code1 要比 Code性能好,如截图所示:
Code1:
#include<stdio.h>
int bitcount( unsigned x )
{
int b ;
for( b=0 ; x != 0 ; x &=(x-1) )
b++;
return b;
}
int main()
{
int x=4 ;
printf("bitcount=%d\n",bitcount(x));
return 0;
}
结果如下:
Code2:
#include<stdio.h>
int bitcount(unsigned x)
{
int b;
for (b = 0; x != 0; x >>= 1)
if (x & 01)
b++;
return b;
}
int main()
{
int x=4 ;
printf("bitcount=%d\n",bitcount(x));
return 0;
}