C语言求一个整数的二进制形式表示中1的个数,用函数实现
1:我们知道,整数在计算机中是以补码的形式存储的。如果给定一个十进制正整数是 如何转换成二进制数的呢?用的是除以2取余数的方法。若余数为1,则1的个数加 1;然后用商再除以2取余数,直到商为0;但是负数除2的余数为负数。因此,可以 在用 unsigned int 定义一个整数,将有符号数转换成无符号数。例如-1的补码