正文

关于计算二进制数有多少个12012-01-31 23:11:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/katwood/53178.html

分享到:

摘自 http://www.cnblogs.com/graphics/archive/2010/06/21/1752421.html


方法一: 普通法

int n,counter=0;
scanf("%d",&n);
while(n)
{
     if(n&1==1)
          counter++;
     n>>=1;
}
精简化:
int n,counter;
for(counter=0;n;n>>=1)
{
     counter+=n&1;
}

方法二:快速法
int n,counter=0;
while(n)
{
          n&=(n-1);
          counter++;
}

方法三: 平行法


阅读(1494) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册