求int型数据在内存中存储时1的个数
题目描述
输入一个int型数据,计算出该int型数据在内存中存储时1的个数。
输入描述:
输入一个整数(int类型)
输出描述:
这个数转换成2进制后,输出1的个数
输入例子:
5
输出例子:
2
解答代码:
#include<iostream>
#include<cstring>
#include<string>
#include<algorithm>
#include<set>
#include<vector>
using namespace std;
int main()
{
int num;
int temp=0;
int count[3]= {0};
while(cin>>num)
{
memset(count,0,sizeof(count));
do
{
temp=num%2;
if(temp==1)
count[1]++;
num=num/2;
//cout<<temp;
}
while(num!=0);
cout<<count[1]<<endl;
}
}