2021年10月30号是本人第一次写csdn,通过这个平台学习到了许多知识,正所谓人人为我,我为人人,今天来和大家来分享一下c语言的二进制转十进制的算法!
二进制由两个数(0与1)构成的,如1001、1000、1100、1110、1111等等,他们所对应的十进制的数字是9、8、12、14、15。那么是怎么计算的呢??我们以1001来说明,1001是由4个数字组成的,而二进制是从右往左数,从0开始数,我们看图!
我们计算的方式呢!是看哪个位置上有1开始计算(计算的顺序是从右往左开始),如图0对应的1与3对应的1就是我们要计算的,那么图上的0对应1,那么就是2的零次方、对应3的就是2的三次方,2的零次方等于1,2的三次方就等于8,然后进行相加就是1+8=9!1111、1010都是如此!
那么我们知道二进制转换10进制的原理了,我们就可以通过次方法来解决c语言的进制转换问题!如图:
#include#include int main(){ char a[10]; int c=0,sum=0,m; printf("输入一串二进制数0或者1!"); gets(a); int b=strlen(a); for(int i=0;i 如有不足之处还请指正!
谢谢大家!



