编写一个函数,确定一个整数的计算机内部表示中有几个“1”。
程序代码如下:
#include "stdafx.h"
#include <iostream.h>
int numOnesInBinary(int number)
{
int numOnes = 0;
while(number != 0)
{
number = number & (number - 1);
numOnes++;
}
return numOnes;
}
int main()
{
int a = 98;
int num = numOnesInBinary(a);
cout << "1的个数为:" << num << endl;
return 0;
}
程序执行结果如下: