给一个十进制整数,求其对应2进制数中1的个数。求大神看看我的这个c语言程序错哪里了。。

2024-10-30 06:14:11
推荐回答(1个)
回答1:

没感觉到有对的地方,我帮你改了一下

#include 
int main()
{
int i,n1,n2,sum=0;//
scanf("%d",&n1);//测试组数
for(i=0;i {
    sum = 0;
        scanf("%d",&n2);//每组的测试数据
while (n2){
            if (n2 % 2 == 1){/最后一位是1
                sum++;
            }
            n2 /= 2;//相当于右移一位
}
        printf("%d\n",sum);
}
return 0;
}