一、编写一个程序,将输入的十进制数转化为二进制表示。例如:输入十进制数64,输出二进制数表示1000000

void deTobi(int a) {int i = 0, stack[10], r, s;do {r        = a / 2;s        = a % 2;stack[i] = s;if (r != 0) {++i;a = r;}} while (r);for (; i >= 0; --i) {printf("%d", stack[i]);}printf("\n");
}int main(int argc, const char *argv[]) {int a;printf("Please input aDecimal digit less than 1023\n");scanf("%d", &a);deTobi(a);return 0;
}

调试运行:

如果只是单纯打印我们可以利用递归巧妙的打印出某数的二进制,代码很精简

void binary(int n) {if (n / 2) {binary(n / 2);}printf("%d", n % 2);
}

二、递归实现二进制转化为十进制

#include "math.h"
void biTode2(int n,int *sum,int *m){char c;scanf("%c",&c);if (c!='#') {*m = *m+1;biTode2(n+1, &(*sum), &(*m));}if(c=='1') *sum=*sum+pow(2, (*m)-n-1);
}int main(int argc, const char *argv[]) {int sum = 0,m = 0;printf("Please input a binary number ending for '#'\n");biTode2(0, &sum, &m);printf("The Decimal Decimal digit is \n");printf("%d ",sum);return 0;
}

结果:

C语言-十进制/二进制数的互相转化相关推荐

  1. 单片机c语言如何表示二进制,单片机C语言中将二进制数转化为十进制的办法

    单片机C语言中将二进制数转化为十进制的办法 1.最简单最直观的方法,将2进制方式表示的数转化为10进制表示的数,要用除10取余法,步骤如下 被除数记为x,10进制表示的结果用数组a表示 1. i=0; ...

  2. 蓝桥杯--C语言十进制转化为十六进制

    C语言十进制转化为十六进制 问题描述: 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至 ...

  3. C语言计算二进制数加法

    文章目录 前言 一.C语言中二进制数加法计算 测试结果 前言 在C语言中计算二进制数的加法 一.C语言中二进制数加法计算 #include <stdio.h> #include <s ...

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

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

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

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

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

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

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

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

  8. c语言十进制转八进制递归,C语言之利用递归将十进制转换为二进制

    #include #include void change2(int num) { if (num != 0) { change2(num / 2); printf("%d", n ...

  9. 二进制,十进制,十六进制互相转化

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/tigaobansongjiahuan8/article/details/76164988 二进制转化 ...

最新文章

  1. 黑莓blackberry手机刷ROM 的详细教程
  2. 简述单片微型计算机屏蔽的作用,单片机原理及应用试题库 - 答案
  3. ExtJs与jQuery的比较
  4. 右侧交易稳健获利的指标
  5. springboot异常处理方式
  6. people laugh and peale cry
  7. AD19一键同时修改PCB各元器件黄色标志字符的尺寸(大了太占空间改小一点
  8. debian webmin 安装
  9. 20200608每日一句
  10. 使用IAR下载烧录调试
  11. 美团实习生C++后台
  12. 20155313 杨瀚 《网络对抗技术》实验七 网络欺诈防范
  13. Kubernetes Pod健康检查-livenessProbe和readinessProbe
  14. REST Assured——断言实现
  15. 从 MySQL 数据页的角度看 B+ 树
  16. LVM Linear vs Striped Logical Volumes
  17. ubuntu 8.04玩魔兽争霸
  18. Python经典案例:身体指数BMI
  19. w32dasm手动汇编教程:
  20. 我和女朋友是如何从渣二本一起考研逆袭京都985和211的(成长历程)

热门文章

  1. 【转】不归零码(NRZ),不归零码(NRZ)是什么意思
  2. 最全免费PPT模板PPT素材站点收录整理,你不知道的免费PPT模板网站
  3. 基坑监测日报模板_基坑监测报告(模板).doc
  4. 裸辞8个月后入职跨境电商
  5. Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day51】—— tomcat
  6. 客户关系管理系统CRM的关键功能
  7. egret白鹭引擎保存加载文件到本地的实现方案
  8. intel realsense D400系列相机介绍(一)
  9. 单片机串口中断控制流水灯c语言,基于单片机AT89C51控制的中断控制流水灯_课程设计报告...
  10. 一个菜鸡初入职场的一年