资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

c语言中求解1的个数

在c语言中有三种求解一个数1的个数的方法

站在用户的角度思考问题,与客户深入沟通,找到天津网站设计与天津网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站建设、成都网站制作、企业官网、英文网站、手机端网站、网站推广、主机域名、网络空间、企业邮箱。业务覆盖天津地区。

  1. 将整数每次右移一位的方式

    int Numble(int n)

    {

    int count = 0;

    while (n)

    {

    if (n & 1 == 1)

    count++;

    n = n >> 1;

    }

    return count;

    }

    但这种方法存在的不足是,当这个整数是负数的时候,将无限循环

  2. 使整数与1进行与运算,1每次左移一位

    int Numble(int n)

    {

    int count = 0;

    int flag = 1;

    while (flag&n)

    {

    count++;

    flag = flag << 1;

    }

    return count;

    }

  3. 整数减1在与这个整数相与

  4. int Numble(int n)

  5. {

  6. int count = 0;

  7. while (n)

  8. {

  9. count++;

  10. n = n&(n - 1);

  11. }

  12. return count;

  13. }


名称栏目:c语言中求解1的个数
本文URL:http://cdkjz.cn/article/igjdde.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220