• 方法1(代码附上,暂时未行通,有兴趣可以修改一下)
  • #include <stdio.h>
int dectobe(int n)
{int temp=n;int k=1;int result=0;int i;while(temp){i=temp%2;result=k*i+result;k=k*10;temp=n/2;printf("%d\n",result);}printf("%d\n",result);return result;
}int main(int argc, char const *argv[])
{int n=15;int result;//printf("input number\n");//scanf("%d",&n);//getchar();result=dectobe(n);printf("%d\n",result );return 0;
}

算法分析:
在实现模2取余后需要逆序输出,这个地方通过不断乘以10来实现后一位比前一位的位数多10,不需要再通过数组或者逆序函数来实现。

  • 方法2
#include <stdio.h>void dectobe(int n)
{int i=0;int a[32]={0};while(n){a[i++]=n%2;n/=2;}for(i = i-1; i >=0; i--)//注意不要重复定义i的类型{printf("%d",a[i]);//%d后不要加\n换行符,不然每一个二进制位都会换行if(i%4==0) //为了美观,四个二进制空一个空格printf(" ");}printf("\n");
}int main(int argc, char const *argv[])
{int n;printf("input number\n");scanf("%d",&n);//getchar();吃掉垃圾字符是用于吃掉上次使用留下的回车。如果接下来还有一个scanf函数,在函数前用getchar吃掉,或者用%*c抑制符。对于int类型的无需吃掉,char类型的要吃掉。dectobe(n);return 0;
}

//2013年华为c语言上机试题2
//计算一个整数二进制表达式中0的个数

  • 方法1
#include <stdio.h>int count(int n)
{int count=0;while(n){n/=2;count++;}return (count-1);//count++之后多加了一个,要减去
}int main(int argc, char const *argv[])
{int n;printf("input number\n");scanf("%d",&n);printf("%d\n",count(n));return 0;
}
  • 方法2
  • 先说一下scanf的返回值
    scanf函数返回成功读入的数据项数,读入数据时遇到了“文件结束”则返回EOF。
    如:scanf("%d %d",&a,&b);函数返回值为int型。如果a和b都被成功读入,那么scanf的返回值就是2;如果只有a被成功读入,返回值为1;如果a和b都未被成功读入,返回值为0;如果遇到错误或遇到end of file,返回值为EOF。end of file为Ctrl+z 或者Ctrl+d。
#include<stdio.h>//计算整数中0的个数,下面的方法用移位的操作,更加简单一些
/*void numzero(int k, int*zeronum)
{int i;int remin;int inter;(*zeronum) = 0;i = k;inter = i / 2;remin = i % 2;while(inter){if(remin == 0){(*zeronum)++;}remin = inter % 2;inter = inter / 2;}
}*/void numzero(int k, int*zeronum)
{(*zeronum) = 0;while(k != 0){if((k & 1) == 0){(*zeronum)++;}k >>= 1;}
}
void main()
{int i;int temp;int num = 0;printf("请输入一个整数\n");temp = scanf("%d", &i);while(temp == 1){numzero(i, &num);printf("%d的二进制数中0的个数为%d\n", i, num);printf("请输入下一个整数,输入其它字符结束\n");temp = scanf("%d", &i);}
}

计算机中实现10进制转换成二进制c编程相关推荐

  1. 10进制转换成16进制

    更新中......... 任意2-36进制数转化为10进制数. 建议自己写函数,代码如下: int Atoi(string s,int radix) //s是给定的radix进制字符串 {int an ...

  2. 试解PTA《20211122-函数基础练习》,涉及 高精度加法 和 10进制转换成2-16进制问题,有需要的同学来看看吧;

    目录 一.前言 二.例题部分 2.1.进制转换 2.1.1.题解1 2.1.2.题解2 2.2. 函数返回一个整数的反序数 (20 分) 2.2.2 题解 2.3. 大整数A+B (10 分) 2.3 ...

  3. 10进制转换成其他进制-短除法

    将10进制下的n转换成b进制下的数. 代码如下: char get(int x) {if (x<=9) return x+'0';return x-10+'A'; }string base(in ...

  4. 10进制转换成2进制,新手制作,欢迎点评。

    /* 输入一个整数,要求输出对应的二进制形式,请用递归函数实现. 提示 1:二进制整数转换为二进制的方法--除 2 取余,由后到 将余数"串"起来,即为对应的二进制.如右图,38 ...

  5. 10进制转16进制 java_Java中将10进制转换成16进制

    import java.util.Scanner; public class Decimal2HexConversion { public static void main(String[] args ...

  6. c语言编写10进制转换成2进制,c语言位域实现10进制转换成2进制

    摘自[<C语言开发技术详解>戴建华 等编著 :电子工业出版社]有改动 #include "stdafx.h" #include #include struct byte ...

  7. delphi10进制转换成16进制

    delphi中有直接把10进制转换成16进制的函数: function   IntToHex(Value:   Integer;   Digits:   Integer):   string;   o ...

  8. C# .NET 16进制转换,10进制转换,8进制转换,2进制转换

    C# .NET 16进制转换,10进制转换,8进制转换,2进制转换 介绍: 16进制:外文名"Hexadecimal"简写 hex: 大多时候以"H"表示 10 ...

  9. java的代码之进制转换(2,8,16与10进制转换)

    文章目录 一.2,8,16进制转换成10进制 二.10进制转换成2,8,16进制返回STRING 三.自己写的十进制转换成十六进制 一.2,8,16进制转换成10进制 使用Integer.parseI ...

最新文章

  1. windows下常用命令
  2. 【C++ 语言】Visual Studio 配置 FFMPEG 开发环境 ( VS2019 CMake 环境安装 | 下载 FFMPEG 开发包 | 配置 FFMPEG )
  3. Win2008 r2 iis7/iis7.5系统下HTTP重定向(301重定向)图文方法
  4. java面试题大合集(开发者必看一)
  5. 实际部署遇到的一些问题
  6. nodejs --inspect-brk结合Chrome开发者工具的调试
  7. 十二个 ASP.NET Core 例子
  8. Logstash配置语法
  9. 研究了EXCEL的行高问题
  10. cmakelists语法_cmake使用教程(六)-蛋疼的语法
  11. WinRunner介绍
  12. java中map、list转json
  13. zoom下载官网android最新,Zoom手机版app下载安装包-Zoom手机版安卓软件下载v5.0-后壳下载...
  14. 节理玫瑰花图怎么画_什么软件能便捷地绘制出节理玫瑰花图、水系玫瑰花图?...
  15. Centos7下安装yasm详细步骤
  16. h5破解网站图片防盗链
  17. 基于RTEMS的阿波罗STM32F429开发板(正点原子)适配
  18. uni.showToast() 提示
  19. matlab画无坐标双曲正割形状并填充颜色
  20. Keil uVision5 MDK(ARM)软件的介绍、下载、安装与注册

热门文章

  1. 无人机激光雷达应用发展的制约因素
  2. 往企业家蜕变的过程中该如何拥抱失败 7 - 创业激情
  3. 腾讯云运维工程师认证TCA--真题(最新2022.11)
  4. 餐饮连锁行业为什么需要订货软件
  5. 28. 学历与学识的区别
  6. 机器人工程专业的教育与考核
  7. E430C 调整 F1-F12 优先,不用再按Fn
  8. 哥斯拉HTML5网页制作,哥斯拉Godzilla运行原理探寻
  9. (主从-阻抗)论文阅读笔记2
  10. clone()方法,深克隆,浅克隆