问题描述
- c++中如何把一个十进制整数转换成二进制然后统计其中1的个数
-
c++中如何把一个十进制整数转换成二进制然后统计其中1的个数
解决方案
做个循环,每次除以2,将余数输出或保存,可转换为二进制,,至于统计,每次除法所得余数为1,使得计数器加1
解决方案二:
itoa转为二进制字符串,自己遍历统计1的个数
解决方案三:
int x = 123;
int count = 0;
while (x > 0)
{
count += x % 2;
x /= 2;
}
解决方案四:
http://codepad.org/rB4uO4CD
解决方案五:
#include
using namespace std;
int main()
{
int num = 123; //这里放输入的数字
int count = 0;
while (num > 0)
{
count += num%2;
num = num>>1;
}
cout << count;
}
解决方案六:
sprintf %x. 转化成二进制
统计1可以移位操作。然后&1
时间: 2024-09-23 10:09:41