printf函数没有这个功能,如果想打印一个数的二进制形式,就得自己计算。下面是我看到的最简便的算法:

#include <stdio.h>
int main(int argc, char *argv[])
{int n=12;for(int i=31;i>=0;i--){printf("%1d",n&1<<i?1:0);}   puts("");                                                                                      return 0;
}

1、如何理解 n&1<<i?1:0 ,加上括号: (n&(1<<i))?1:0

2、因为int类型有4个字节,所以也就是32位二进制,从bit0到bit31,所以,1<<i,就是将1位移31,然后和n位与,用于将n的最高位取出,因为取出后如果为0,那么结果就是0,如果为1,结果就是一个正整数,所以这里加了一个问号表达式,来将结果变为0和1。后面的就很明了了。

3、复习一下运算符的优先级。按位与&是9级,移位是6级,问号表达式是14级,所以计算顺序是:移位>>按位与>>问号表达式。正好符合要求,所以一个括号也不用。

c语言打印一个整数的二进制形式相关推荐

  1. 将任一整数转换为二进制形式

    題:将任一整数转换为二进制形式 思路:将十进制整数转换为二进制的方法很多,这里介绍的实现方法利用了C语言能够对位进行操作的特点. 对于C语言来说,一个整数在计算机内就是以二进制的形式存储的,所以没有必 ...

  2. 偶数乘2奇数乘3C语言,输入一个整数x,如果为偶数乘2,否则乘3,然后输出.C语言

    编写一个程序,输入一个正整数,并做以下运算:如果为偶数,除以2,如果为奇数,乘3加1.得到的结果再按上 本人不会C#,算法相通,用c语言演示一下:#includevoidmain(void){intz ...

  3. C语言计算一个整数的位数

    C语言计算一个整数的位数 只需要设计一个计时器,因为C语言中除法只留下整数部分,所以可以拿数字/10:数字位数即为循环次数,待n为个位时n/10=0,然后循环结束. #include<stdio ...

  4. C语言查找一个整数出现的次数

    C语言查找一个整数出现的次数 思路分析: 首先循环输出1-100的所有整数,用整数%10,等于9,即求出了所有各位是9的个数,用整数除10,得到了所有十位是9的个数,有一个数字比较特殊,99我们应该算 ...

  5. SSE——将任一整数转换为二进制形式

    将任一整数转换为二进制形式. **输入格式要求:"%d" 提示信息:"Input number:" **输出格式要求:"number of decim ...

  6. 使用Java语言打印一个心形图案

    要使用 Java 语言打印一个心形图案,你可以使用两个 for 循环和一些字符串拼接来实现.你也可以使用 ASCII 码来打印心形图案,这将更加简单. 以下是使用两个 for 循环和字符串拼接的示例代 ...

  7. C语言 输入一个整数n,求出其阶乘

    输入一个整数n,求出其阶乘 #include <iostream> #include <cstdio> using namespace std; int main() {int ...

  8. C语言判断一个整数是不是素数(质数)、求100以内的所有素数、求前50个素数

    目录 一.什么是素数(质数 Prime) 二.判断一个整数是不是素数(质数)代码 三.求100以内的所有素数(质数) 四.输出前50个素数(质数) 一.什么是素数(质数 Prime) 质数又称素数.一 ...

  9. C语言——输出一个整数的每一位

    [问题描述]:输出一个整数的每一位.例如:给一个数2468,在屏幕上打印出来2 4 6 8 [解题思路]:将整数的每一位进行拆分,然后依次打印出来   例如:28 ,首先28%10得到余数8,然后在2 ...

最新文章

  1. centos7 mysql workbench_centOS下mysql workbench安装配置教程
  2. 科技竞赛:阿广带大家免费使用GPU打比赛,普通人也有机会拿奖金!
  3. DDMS的使用、内存溢出的调试和模拟器的启动命令参数
  4. 企业运维之域控篇(九)--辅助域强制占用后的操作--清除数据
  5. freeBSD时区设置与时间设置
  6. 【hdoj_2079】选课时间(母函数)
  7. webpack4 入门配置研究
  8. 作者:陈威,电子科技大学互联网科学中心硕士生。
  9. 一切从零开始外挂教程(翻录)
  10. 实战篇—关于某产品的切分细则
  11. linux 查看cpu温度,安装lm_sensors工具
  12. 【DL小结4】seq2seq与attention机制
  13. vsto excel决跨表引用值不能更新的问题
  14. java出现圅_java获取汉字拼音首字母A
  15. 赚大钱,你需要多一些杠杆思维
  16. 南京计算机工程大学分数线,2017南京信息工程大学录取分数线
  17. 哪位知道基带怎么修复?
  18. 软件项目规划大纲知识点
  19. 如何往 Apple Watch 中添加音乐
  20. PycURL学习笔记

热门文章

  1. Python-OpenCV 杂项(一):图像绘制
  2. 浅淡Webservice、WSDL三种服务访问的方式(附案例)
  3. opencv 金字塔图像分割
  4. GMM-HMM语音识别模型 原理篇
  5. Hadoop MapReduce容错性分析
  6. 程序员面试题精选100题(01)-把二元查找树转变成排序的双向链表[数据结构]
  7. 无监督特征学习——Unsupervised feature learning and deep learning
  8. word或wps中mathtype在工具栏/菜单栏消失的解决方法
  9. 新手福利:Apache Spark 入门攻略
  10. 私.Modbus测试_ZC01_TCP方式