龙空技术网

C语言实例——二进制转与十进制相互转换

暴躁星哥哥 374

前言:

此时同学们对“c语言转化为二进制数函数”大致比较珍视,看官们都想要知道一些“c语言转化为二进制数函数”的相关知识。那么小编也在网上搜集了一些关于“c语言转化为二进制数函数””的相关内容,希望我们能喜欢,各位老铁们一起来了解一下吧!

很多时候我们会用到十进制和二进制的转换,今天我们就来写一下十进制二进制互相转化的代码吧;

首先分析一下,二进制转十进制:

二进制化为十进制,只需要将对应倒数第n位数上的数组乘以2的相应n-1次幂即可,例如1100100十进制2^2+2^5+2^6=100;

参考代码:

int convertBinaryToDecimal(long long n){ int decimalNumber = 0, i = 0, remainder; while (n!=0) { remainder = n%10; n /= 10; decimalNumber += remainder*pow(2,i); ++i; } return decimalNumber;}

然后介绍一下,十进制转化二进制,商余法,例如

100/2=50……0;

50/2=25……0;

25/2=12……1;

12/2=6……0;

6/2=3……0;

3/2=1……1;

1/2=0……1;

级100二进制1100100;

参考代码:

long long convertDecimalToBinary(int n){ long long binaryNumber = 0; int remainder, i = 1, step = 1;  while (n!=0) { remainder = n%2; printf("Step %d: %d/2, 余数 = %d, 商 = %d\n", step++, n, remainder, n/2); n /= 2; binaryNumber += remainder*i; i *= 10; } return binaryNumber;}

有兴趣的话可以自己编程验证一下哦;

喜欢的话可以点个关注哦,有什么问题可以留言讨论哦。

标签: #c语言转化为二进制数函数 #java二进制转十进制算法 #c语言十进制转二进制代码 #c语言十进制转二进制代码简单 #c语言定义二进制