//输出一个整数二进制(补码)中1的个数
int count_bit_one(unsigned int n)//形参为无符号整数,对于负数而言,其最高位不表示符号位,表示有效位,这种思想至关重要
{
int count=0;
while(n)
{
if(n%2==1)
{
count++;
}
n=n/2;
}
return count;
}
int main()
{
int a=0;
printf("请输入一个整数:");
scanf("%d",&a);
int n=count_bit_one(a);
printf("%d",n);
return 0;
}
C语言每日一问----输出一个整数二进制(补码)中1的个数
最新推荐文章于 2022-12-18 12:26:29 发布