判断二进制有几个1

简介: 判断二进制有几个1

判断有多少个1

1.右移每次判断一个二进制

int several_one(int a)
{
  int count = 0;
  for (int i = 0; i < 32; i++)//只能判断int型
  {
    if (((a >> i) & 1) == 1)
      count++;
  }
  return count;
}


2.形参a的值发生了改变

int several_one(int a)
{
  int count = 0;
  while (a != 0)//可以判断任意
  {
    count++;
    a = a & (a - 1);
  }
  return count;
}
相关文章
|
6月前
二进制中1的个数
二进制中1的个数
37 0
|
6月前
|
C++
Acwing.26 二进制中1的个数
Acwing.26 二进制中1的个数
04:奇偶ASCII值判断
04:奇偶ASCII值判断
378 0
十进制转二进制的方法 + 写代码实现[C/C++]
整数十进制转二进制转换方法 + 如何用代码实现为主要内容 方法1:除二取余法 十进制数除2得商取余法:对十进制进行除法运算,十进制除以2可以得到一个商和余数 方法2:按权相加法 ......
653 1
|
算法
34.二进制中1的个数
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。
81 0
34.二进制中1的个数
|
开发者
二进制中1的个数(上)
二进制中1的个数(上)
二进制中1的个数(上)
|
存储 前端开发 程序员
二进制中1的个数(下)
二进制中1的个数(下)
二进制中1的个数(下)
统计二进制中1的个数,,,写一个函数,返回参数二进制中1的个数 写一个代码判断一个数字是不是2的n次方
统计二进制中1的个数,,,写一个函数,返回参数二进制中1的个数 写一个代码判断一个数字是不是2的n次方
128 0
代码例题(1-3)(含进阶版)及讲解:1.求两个数二进制中不同位的个数 2.打印整数的二进制的奇数和偶数位 3.交换两个变量,不创建临时变量 (ps最后一道为已知代码求值题)
代码例题(1-3)(含进阶版)及讲解:1.求两个数二进制中不同位的个数 2.打印整数的二进制的奇数和偶数位 3.交换两个变量,不创建临时变量 (ps最后一道为已知代码求值题)
93 0
018.任意进制数的转换
018.任意进制数的转换
96 0