题目:
封装函数,统计int类型中有多少位为1
例如:5有两位为1
代码:
#include<stdio.h>
int fun(int test)
{
int num=0,t=0;
for(int i=0;i<32;i++)
{
t=test;
t=t>>i;
if(t&1)
num++;
}
return num;
}
int main(int argc, char const *argv[])
{
int a=0;
scanf("%d",&a);
int res=fun(a);
printf("%d\n",res);
return 0;
}