首页 > 代码库 > 统计二进制数中1的个数
统计二进制数中1的个数
方法1:
int CountNumOf1(int digital)
{
int num = 0;
while(digital)
{
if(digital % 2 == 1)
{
num ++;
}
digital /= 2;
}
return num;
}
方法2:
int CountNumOf1(int digital)
{
int num = 0;
while(digital)
{
num += (digital % 2) ? 1: 0;
digital /= 2;
}
return num;
}
方法3:
int CountNumOf1(int digital)
{
int num = 0;
while(digital)
{
num += digital & 0x01;
digital >>= 1;
}
return num;
}
方法4:
int CountNumOf1(int digital)
{
int num = 0;
while(digital)
{
digital &= (digital - 1);
num++;
}
return num;
}
int main(void)
{
int n;
scanf("%d",&n);
printf("%d ",CountNumOf1(n));
return 0;
}
本文出自 “sunnyting” 博客,转载请与作者联系!
统计二进制数中1的个数
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。