1的个数
题目描述
给定一个整数$N$,请告诉我这个整数的二进制里面有多少个$1$。
输入
第一行输入一个整数$T$,代表有$T$组测试数据。
每组数据输入一个整数$N$。
注:$1 <= T <= 30,1 <= N <= 1000000$。
输出
对每组测试数据,输出一个整数代表二进制中$1$的个数。
样例输入
2
10
3
样例输出
2
2
#include <stdio.h> int main() { int n,m,ans=0,i=0,t; scanf("%d",&n); while(n--) { scanf("%d",&m); while(m) { t=m%2; m/=2; if(t==1) ans++; } printf("%d\n",ans); ans=0; } }