#include <stdio.h>
//第一种
int count_1(unsigned int num)
{
int count=0;
while(num)
{
if(num%2==1)
{
count++;
}
num=num/2;
}
return count;
}
//第二种
int count_1s(int num)
{
int count=0;
int i=0;
for(i=1;i<=32;i++)
{
//将num向右移动i位,按位与1
if(( num>>i & 1 ) ==1)
{
count++;
}
}
return count;
}
int main()
{
int num=-6;
int input1=count_1(num);
int input2=count_1s(num);
printf("%d\n",input1);
printf("%d\n",input2);
return 0;
}