十进制转二进制怎么算 二进制计算公式

十进制到二进制十进制到二进制的转换使用除以2的方法得到余数。以十进制数11为例。1 2 = 5余数15 2 = 2余数12 2 = 1余数01 2 = 0余数1第一次得到的余数放在右边,所以转换成二进制数1011。c语言十进制到二进制分析(1)用数组存储二进制,循环数组输出结果。(2)用2除,用%。...

十进制到二进制

十进制到二进制的转换使用除以2的方法得到余数。以十进制数11为例。

1 ÷ 2 = 5余数1

5 ÷ 2 = 2余数1

2 ÷ 2 = 1余数0

1 ÷ 2 = 0余数1

第一次得到的余数放在右边,所以转换成二进制数1011。

c语言十进制到二进制

分析

(1)用数组存储二进制,循环数组输出结果。

(2)用2除,用%。

#include<stdio.h>int ***in(void){ int m,n,i,j; int a[16] = {0}; printf("请输入一个整数:"); scanf("%d",&m); for(n=0;n<15;n++){ i = m % 2; j = m / 2; m = j; a[n] = i; } for(n=15;n>=0;n--){ printf("%d",a[n]); if(n%4 == 0){ printf(" "); } } return 0;}

程序分析

(1)int a运行结果 = {0},定义数组a,初始值设为0。

(2)第一个for循环为(n = 0);n <15;++),循环范围是0-14。数字A的初始值设置为0,最高位默认设置为0。转换后的二进制数被放入数组的其余元素中。

(3)第二个for循环为(n = 15);n & gt=0;n & # 8211),循环范围0-15,输出所有值。

[16]

业务分析

以输入值11为例进行分析。输入11,m=11,输入第一个for循环。

(1)n=0,i=m%2=11%2=1,j=m/2=11/2=5,m=j=5,a[0]=1

(2)n=1,i=m%2=5%2=1,j=m/2=5/2=2,m=j=2,a[1]=1

(3)n=2,i=m%2=2%2=0,j=m/2=2/2=1,m=j=1,a[2]=0

(4)n=3,i=m%2=1%2=1,j=m/2=1/2=0,m=j=0,a[3]=1

如果此时输出数组,结果是:1101 0000 0000 0000。

进入第二个for循环,使用除以2的余数法。第一次得到的余数需要放在右边,所以需要逆序输出数组,每四位输出一个空网格。

结果:0000 0000 0000 1011

摘要

(1)在本例中,数组用于存储二进制数字,但数组大小仅为16。如果该值太大,则无法转换。

(2)本例中,数组初始化为0,转换后输出的最高位为0。只转换正整数,不能转换负数或小数。

本文来自吃鸡只用平底锅投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/533577.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 05-05
下一篇 05-05

相关推荐

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信