题目:

计算机内部用二进制来表达所有的值。一个十进制的数字,比如24,在一个32位的计算机内部被表达为00000000000000000000000000011000。可以看到,从左边数过来,在第一个1之前,有27个0。我们把这些0称作前导的零。

现在,你的任务是写一个程序,输入一个整数,输出在32位表达下它前导的零的个数。

输入格式:

一个整数,在32位的整数可以表达的范围内。

输出格式:

一个整数,表达输入被表达为一个32位的二进制数时,在第一个1之前的0的数量。

代码:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main() {//求二进制的前导的零//1.输入一个十进制的数//2.将十进制转化为二进制所占位数(按十进制数大于0,小于0和等于0三种情况计算)int num, count = 1;scanf("%d", &num);if (num < 0) {  //当十进制数为负数时,二进制最高位(即符号位)为1,则此时没有前导0printf("0");}else if (num == 0) { //当十进制数为0时,二进制位全为0,即有32个前导0printf("32");}else {while (num / 2 != 0) {//当十进制数为正数时,求二进制位为1的最高位,用count记录位数,则(32-count)为前导0的个数count++;num /= 2;}printf("%d", 32 - count);}return 0;
}

结果:

二进制的前导的零 — C语言【十进制转二进制分大于0,小于0和等于0】相关推荐

  1. C语言 十进制和二进制相互转换 - C语言零基础入门教程

    目录 一.十进制和二进制区别 1.基数不同 2.有效字符不同 3.用途不同 二.十进制转二进制 三.二进制转十进制 四.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >& ...

  2. c语言位运算八进制转二进制,C语言十进制转换二进制八,十六进制。二进制转十进制。...

    C语言十进制转换二进制八,十六进制. 十进制转二进制有个计算公式,就是除以2取余再倒序显示余数就是了.可以根据公式写.八制进公式也同理.十六进制有点不一样,大于9的要转为字母.A,B,C,D,E,F. ...

  3. C语言十进制转换为二进制(附完整源码)

    C语言十进制转换为二进制 C语言十进制转换为二进制完整源码 C语言十进制转换为二进制完整源码 #include <stdio.h> #include <stdlib.h>#de ...

  4. python递归十进制转化二进制_什么是递归?用十进制转二进制的Python函数示例说明...

    先上用Python写的十进制转二进制的函数代码: def Dec2Bin(dec): result = '' if dec: result = Dec2Bin(dec//2) return resul ...

  5. java_二进制的前导的零

    题目内容: 计算机内部用二进制来表达所有的值.一个十进制的数字,比如18,在一个32位的计算机内部被表达为00000000000000000000000000011000.可以看到,从左边数过来,在第 ...

  6. c语言10进制转2进制字符串,C语言十进制转二进制——实现和思考

    问题描述: 实现一个函数:能使十进制数转为二进制数 代码实现: 实际上可以利用C语言中的itoa函数 [itoa函数是C/C++的非标准函数,不保证被所有编译器正常使用] 具体用法:char * it ...

  7. C语言十进制转换为二进制

    C语言将十进制转换为二进制. 入门级的写法,可供参考. yu:取余后的值. p:p是10的倍数.因为一般计算十进制转二进制时是除二取余逆排序法,所以需要将每一位的取余乘以p才可以加上结果变量值以达到逆 ...

  8. C语言——十进制转换为二进制

    #include <stdio.h> #include <math.h> //十进制转换为二进制 long long convertDecimalToBinary(int n) ...

  9. c语言 123转2进制,C语言十进制转二进制

    十进制转二进制可以使用库函数itoa. itoa函数原型:char*itoa(int value,char*string,int radix); 功能:将任意类型的数字转换为字符串.在中与之有相反功能 ...

最新文章

  1. 无人机将在未来的智慧城市中扮演重要角色
  2. 模拟IE登录一个需要(windows身份)验证的网站
  3. 3d slicer如何下载出radiomics_Lumion 10.0 软件下载及安装教程
  4. asp.net表单提交方法GET\POST
  5. [html] html5点击返回键怎样不让它返回上一页
  6. MySQL数据库储存引擎Inoodb一--记录储存结构
  7. 北大先修课 计算机,解读:北大清华大学先修课的那些事
  8. 简析语音识别技术的工作原理
  9. ASP.NET 实践:锁定 ASP.NET 配置设定
  10. 《深入浅出MFC》第一、二章笔记
  11. 服务器声卡硬件安装,win 2008虚拟声卡的配置
  12. 随机抽样C语言,R语言中实现简单随机抽样
  13. 使用MediaRecorder录制音频和视频(Camera1)
  14. 如何在我的应用启动界面实现「开屏广告」?
  15. C#打印标签(包括二维码和一位条码)
  16. 突变点检测:带突变的趋势描述测试过程
  17. 【C语言】日期时间转秒数
  18. ppt中的图片批量保存的方法(及像素分辨率换算)
  19. 台风大涡模拟三维可视化
  20. Labview与基恩士PLC串口通讯通信常用功能一网打尽

热门文章

  1. 石墨烯在精确测量磁场方面有一个主要优势,因为不需要考虑传感元件的厚度-供应分散液氮掺杂石墨烯/羧基化石墨烯/氨基化石墨烯定制
  2. GPS 全球卫星导航定位系统
  3. linux线程数和文件句柄数配置
  4. 内容井喷,营销加码,2020网络电影的热趋势与冷观察
  5. 用html给一张图片做多个热区链接,HTML之六:图像的热区连接
  6. Python小游戏——孔明棋
  7. 对金玺曾版《Unity3D手机游戏开发》第三章“第一人称射击游戏”修改,使支持僵尸连续攻击
  8. 深耕智能测试,持续为开发者产品应用质量保驾护航
  9. 前端之文档流浮动以及定位
  10. xshell 修改服务器,xshell搭建服务器环境教程