#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int input = 0;
int num = 0;
int count = 0; //定义三个变量用于后续使用
printf("请输入需要判断的数:>");
scanf("%d", &input); //接收用户输入的值
int i = 0;
for (i = 0; i < 32; i++) //一个int型共有32个二进制位需要判断32次
{
num = 1 & (input >> i); //第一次无需右移,后面每次移动i位
if ( 1 == num)
count++; //如果是1,&1的情况下,num值就是1,若为0代表input此时的二进制位为0
}
printf("二进制位中一共有%d个1\n", count);
return 0;
}