目录

1、二进制中0的个数

2、二进制中1的个数

3、一个数是不是2的几次幂



1、二进制中0的个数

使用|运算:有一个是1则为1,x|(x+1)可以将数字二进制位的最低位的0改为1,逐渐递进,直到将二进制位改为全1,对应原码-1结束。

#include<stdio.h>
int main()
{char x =5, count = 0;while (x+1)//当x=-1的时候退出循环{count++;x =x|(x + 1);}printf("%d", count);return 0;
}

2、二进制中1的个数

&运算:同时为1才为1,x&(x-1)可以将x最低位的1改为0

#include<stdio.h>
int main()
{int x = 5, count = 0;while (x){x &= (x - 1);count++;}printf("%d", count);return 0;
}

3、一个数是不是2的几次幂

#include<stdio.h>
int main()
{//一个数是2的次幂 2^0=1 0001,2^3=8 1000//所以说二进制数只有一个1int x = 1;if(x<=0)printf("NO");else {x = x & (x - 1);if (x == 0)printf("YES");elseprintf("NO");}return 0;
}
#include<stdio.h>
#include<math.h>
int main()
{int n = 32;for (int i = 0; (int)pow(2, i) <= n ; i++){if ((int)pow(2, i) == n){printf("yes,%d次幂",i);return 0;}}printf("no");return 0;
}

二进制0和1的个数,2的次幂相关推荐

  1. c语言x在二进制表示下1的个数,算法:计算十进制数字在二进制表示1的个数,...

    算法:计算十进制数字在二进制表示1的个数, 题目一 计算十进制数字在二进制表示 1 的个数 举个例子: 十进制数字为 1 时,它的二进制表示是 001,二进制表示 1 的个数为 1: 十进制数字为 2 ...

  2. JAVA实现输入一个整数,输出该数二进制表示中1的个数(《剑指offer》)

    题目: 输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示. 这个题目有个比较有意思并且被公认的解法,我就先贴答案吧: public class Solution {public int ...

  3. 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示

    转自http://my.oschina.net/ithaibo/blog/142655 题目: 输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示. 题目引自http://ac.jobdu ...

  4. 算法--微软面试:整数的二进制表示中1的个数(Java实现)

    Q题目 整数的二进制表示中1的个数 输入一个整数,求该整数的二进制表达中有多少个1. 例如,输入10,由于其二进制表示为1010,有两个1,因此输出2. 这是一道很基本的考查位运算的面试题. Answ ...

  5. 题库练习5(句子逆序、字符串排序、int型二进制表示中1的个数、购物单)

    1. 句子逆序 将一个英文语句以单词为单位逆序排放.例如"I am a boy",逆序排放后为"boy a am I".所有单词之间用一个空格隔开,语句中除了英 ...

  6. 计算数值二进制表达式中1的个数

    --------------------------------------------- -- 时间:2019-03-21 -- 创建人:Ruo_Xiao -- 邮箱:xclsoftware@163 ...

  7. BZOJ3209(n的二进制表示中1的个数的乘积)

    题目:花神的数论题 设 sum(i) 表示 i 的二进制表示中 1 的个数.给出一个正整数 N ,求 sum(1)至sum(N) 的乘积. #include <iostream> #inc ...

  8. 整数的二进制表示中 1 的个数

    2019独角兽企业重金招聘Python工程师标准>>> 题目:整数的二进制表示中 1 的个数 要求: 输入一个整数,求该整数的二进制表达中有多少个 1. 例如输入 10,由于其二进制 ...

  9. 《剑指offer》-统计整数二进制表示中1的个数

    题目描述 输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示. 直观思路就是把二进制表示从右往左统计1的个数.直接想到移位操作来迭代处理.坑点在于负数的移位操作会填充1.有人贴出了逻辑移位 ...

最新文章

  1. httpclient异步发送请求_关于Tornado5.1:到底是真实的异步和还是虚假的异步
  2. BV-Person: A Large-scale Dataset for Bird-view Person Re-identification
  3. 四位达林顿_ULN2069B - 80 V - 1.5 A四路达林顿开关 - STMicroelectronics
  4. 2.6.24及以上版本内核裁剪后启动黑屏的解决办法
  5. GPU Gems1 - 21 实时辉光(Real-Time Glow)
  6. jqueryui dialog asp.net服务端控件失效问题解决
  7. 解决 Tomcat 添加 Cookie 域名报错问题 : CookieProcessor
  8. Qt creator5.7 OpenCV249之图片膨化(含源码下载)
  9. 2017-9-11 - A - webServer
  10. python tkinter 中文文档_Python实现中文文档的简体与繁体互相转换
  11. python廖老师_Python3.5-20190518-廖老师-自我笔记-面向对象
  12. 多线程下单例设计模式的实现
  13. 如何批量Ping 1000个IP地址,一个小技巧节约N小时?
  14. GitKraken 比较好用的 Git 可视化工具
  15. Login.jsp登录页面代码(css+bootstrap)
  16. 在服务器上打不开新点投标文件,新点投标文件制作操作手册.doc
  17. html5转换成mp4,ffmpeg将mov文件转换为mp4的HTML5视频标签IE9
  18. RE:Working outside of application context
  19. 使用CCS调试CC3200芯片GPIO接口应用----流水灯程序
  20. ZFS 设置指南(二)

热门文章

  1. 2019IDC:是谁拿下中国机器学习平台市场份额第一?
  2. mysql级联删除外键约束_MySQL外键设置 级联删除
  3. OTSU图像分割算法(python实现)
  4. 浅谈nginx反向代理问题
  5. Excel表格太大,怎么打印在一张纸上?一个键1秒搞定!
  6. 北京邮电大学计算机学院就业信息,北京邮电大学就业信息网
  7. PCG(preconditioned conjugate gradient)
  8. 你是怎么对待上帝的?
  9. win10计算机临时网络设置,win10系统创建无线临时网络连接的操作步骤
  10. python开发培训机构哪个好