如何用c语言编写二进制和十进制之间的转换

如何用c语言编写二进制和十进制之间的转换,第1张

二进制转十进制

n

为输入的二进制数,d用来处理该数。

k为标志位,当k为1时表示输入的数有问题,需要重新输入。

i为每次分解的个位数;j为二进制的权值;m为累计的十进制和;p为输入的数的位数,超过10时,该数越界,需要重新输入,定k=1。

程序如下:

#include

<conioh>

main()

{

long

int

n,d;

int

k,i,j,m,p;

do

{

k=0;

m=0;j=1;i=0;p=0;

printf("\ninput

an

number

only

includes

0

or

1:");

scanf("%ld",&n);

if(n<0)

k=1;

d=n;

while(d)

{

i=d%10;p++;

if(i>1

||

p>10)

{k=1;break;}

m+=ij;

j=j2;

d/=10;

}

}

while(k==1

||

m==0);

printf("\n

the

number

is

%d\n",m);

getch();

}

#include"stdioh"

void

main()

{

int

bin[8];

int

dec;

printf("请输入8位二进制码,用逗号隔开,不够8为的在前面补0\n");

scanf("%d,%d,%d,%d,%d,%d,%d,%d",&bin[0],&bin[1],&bin[2],&bin[3],&bin[4],&bin[5],&bin[6],&bin[7]);

dec=a[0]binx(7)+a[1]binx(6)+a[2]binx(5)+a[3]binx(4)+a[4]binx(3)+a[5]binx(2)+a[6]binx(1)+a[7]binx(0);

printf("%d%d%d%d%d%d%d%d的十进制为:%d\n",bin[0],bin[1],bin[2],bin[3],bin[4],bin[5],bin[6],bin[7],dec);

}

int

binx(int

x)

{

int

ss=1;

for(int

i=0;i<x;i++)

ss=ss2;

return

ss;

}

以上就是关于如何用c语言编写二进制和十进制之间的转换全部的内容,包括:如何用c语言编写二进制和十进制之间的转换、c++编程序将2进制数转为10进制数、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9498349.html

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

发表评论

登录后才能评论

评论列表(0条)

保存