c语言怎么将十进制转化成二进制

如题所述

第1个回答  2022-12-14

#include <stdio.h>

void main()

{

//进制转换函数的声明

int transfer(int x);

int x;

printf("请输入一个十进制数:");

scanf("%d",&x);

printf("转换成二进制数是:%d\n",transfer(x));

}

int transfer(int x)

{

int p=1,y=0,yushu;

while(1)

{

yushu=x%2;

x/=2;

y+=yushu*p;

p*=10;

if(x<2)

{

y+=x*p;

break;

}

}

return y;

}

扩展资料:

(1)二进制转十进制

方法:“按权展开求和”

【例】:

规律:个位上的数字的次数是0,十位上的数字的次数是1,......,依次递增,而十分位的数字的次数是-1,百分位上数字的次数是-2,......,依次递减。

注意:不是任何一个十进制小数都能转换成有限位的二进制数。

(2)十进制转二进制

十进制整数转二进制数:“除以2取余,逆序排列”(除二取余法)

【例】:

89÷2 ??1

44÷2 ??0

22÷2 ??0

11÷2 ??1

5÷2 ??1

2÷2 ??0

1

十进制小数转二进制数:“乘以2取整,顺序排列”(乘2取整法)

参考资料:

百度百科-二进制

c语言怎么将十进制转化成二进制
\/\/进制转换函数的声明 int transfer(int x);int x;printf("请输入一个十进制数:");scanf("%d",&x);printf("转换成二进制数是:%d\\n",transfer(x));} int transfer(int x){ int p=1,y=0,yushu;while(1){ yushu=x%2;x\/=2;y+=yushu*p;p*=10;if(x<2){ y+=x*p;break;} }...

怎样用十进制转换成二进制数呢?
在C语言中,可以使用以下代码将十进制数转换为二进制数:include <stdio.h> void decimalToBinary(int n) { int binaryNum[32];int i = 0;while (n > 0) { binaryNum[i] = n % 2;n = n \/ 2;i++;} for (int j = i - 1; j >= 0; j--) { printf("%d", binaryNum[j...

用C语言编写,输入一个十进制并转换成二进制
要将十进制转换为二进制,可以采用“除2取余”的方法,即将十进制数不断除以2,取得每一次的余数,并将余数从低位到高位依次排列,即可得到该数的二进制表示。在C语言中,可以使用循环和数组来实现这个转换过程。具体步骤如下:1. 读入一个十进制数n;2. 定义一个数组a,用来存储二进制数...

c语言编程,如何将十进制转化为2进制
c语言编程将十进制转化为2进制可按手工转换规则进行程序转换。整数占四个字节,每字节8位,共32位。所以,可以定义一个32位的数组来存储转换结果。循环将整数进行除2取余数,余数存储到数组中。当整数整除为0时,结束循环 逆序输出数组,得到转换结果 参考代码:include <stdio.h>void main(){ int...

c语言十进制转二进制代码
c语言十进制转二进制一般来说就是指在C语言环境下,实现把十进制转换成二进制,也就是属于一种进制的转换,其原理通常是正整数转换成二进制,采用除二取余,然后倒序排列,高位补零的方式。参考范例:十进制转二进制示例代码一 include stdio.h int main(){ int i, n = 0, b[16];scanf(%d, ...

C语言十进制转二进制
十进制转二进制可以使用库函数itoa。itoa函数原型:char*itoa(int value,char*string,int radix);功能:将任意类型的数字转换为字符串。在<stdlib.h>中与之有相反功能的函数是atoi。nt value 被转换的整数,char *string 转换后储存的字符数组,int radix 转换进制数,如2,8,10,16 进制等。

c语言编写一个程序,将十进制整数n 转换成二进制数
y=0,yushu;while(1){ yushu=x%2;x\/=2;y+=yushu*p;p*=10;if(x<2){ y+=x*p;break;} } return y;} void main(){ \/\/进制转换函数的声明 int transfer(int x);int x;printf("请输入一个十进制数:");scanf("%d",&x);printf("转换成二进制数是:%d\\n",transfer(x));} ...

C语言十进制转二进制,程序和流程图,最好有注释,谢了!
这个也要别人写就有点懒了,其实10进制转2进制原理非常简单,把十进制数 模 2(也就是小学生都知道的除以2得到的余数),得数倒数放在一个字符数组中,然后把这个数除以2,得数再安装上面的步骤执行,直到这个得数<2,作为第一位就可以,程序如下:int a;int i;char bits[1024];\/\/多一点没...

用c语言把十进制转换成二进制
include<stdio.h> include<math.h> void main(){int ten,er=0,fig;int i;printf("输入十进制数:");scanf("%d",&ten);if(ten!=1){for(i=1;ten>1;i++){ fig=ten%2;ten=ten\/2;er+=fig*pow(10,(i-1));} er+=1*pow(10,(i-1));printf("转化为二进制数为:%d\\n",er...

用C语言如何将十进制转换为二进制
3、输入十进制数:printf("请输入一个十进制数(0~32767):\\n");scanf("%d", &n); \/*输入n的值*\/ 4、计算二进制数:for (m = 0; m < 15; m++) \/*for循环从0到14,最高为符号位,本题始终为0*\/ { i = n % 2; \/*取2的余数*\/ j = n \/ 2; \/*取被2整...

相似回答
大家正在搜