描述
输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数。
输入描述:
输入一个整数(int类型)
输出描述:
这个数转换成2进制后,输出1的个数
输入 5
输出 2
方法一、
思路:
用&和>>来实现
#include <iostream>
using namespace std;
int main ()
{
int num;
cin >> num;
int count = 0;
while(num)
{
if(num & 1)
count ++;
num = num >> 1;
}
cout << count << endl;
return 0;
}
方法二、
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int n;
int count;
while (cin >> n)
{
count = 0;
while (n)
{
if (n % 2 == 1)
count++;
n = n / 2;
}
cout << count << endl;
}
return 0;
}