对于一个字节(8bit)的无符号整型变量,求其二进制表示中"1"的个数。
C# codes as below:
using System;
namespace CountConsoleApp
{
class Program
{
static void Main(string[] args)
{
Program program = new Program();
for (int i = 0; i <= 32; i++)
{
Console.WriteLine(program.Count3(i));
}
Console.ReadKey();
}
public int Count1(int i)
{
int count = 0;
while (i != 0)
{
count++;
i = i & (i - 1);
}
return count;
}
public int Count2(int i)
{
int count = 0;
while (i != 0)
{
count += i & 1;
i = i >> 1;
}
return count;
}
public int Count3(int i)
{
int count = 0;
while (i != 0)
{
count += i % 2;
i = i / 2;
}
return count;
}
}
}