网站不足,网站建设分站要备案,网站空间速度,新手怎么做网站内容维护由于这个数有可能是负数#xff0c;负数在计算机中以补码的方式存储#xff0c;要求负数的补码中1的个数依然可以正确输出#xff0c;方法如下#xff1a;1、定义这个数的变量类型为无符号整型#xff08;unsigned int#xff09;代码为includestdio.hint count_… 由于这个数有可能是负数负数在计算机中以补码的方式存储要求负数的补码中1的个数依然可以正确输出方法如下1、定义这个数的变量类型为无符号整型unsigned int代码为includestdio.hint count_one_bits(unsigned value){int count0;while(value){ if(value%21) {count; } valuevalue/2; }return count;}int main(){unsigned int value;int count;scanf(%d,value);countcount_one_bits(value);printf(count%d\n,count);return 0;} 2、定义为整型变量用“按位与”的和“右移”实现。#includestdio.hint count_one_bits(int value){int count0;int i32;while(i){if(value11) { count;}valuevalue1;i--;}return count;}int main(){int value;int count0;scanf(%d,value);countcount_one_bits(value);printf(count%d\n,count);return 0;}3、继续优化int count_one_bits(int value){int count0;while(value){count;valuevalue(value-1); }return count;}int main(){int value;int count0;scanf(%d,value);countcount_one_bits(value);printf(count%d\n,count);return 0;} 转载于:https://blog.51cto.com/haipi/1704641