八进制怎么转转二进制?

八进制怎么转转二进制?,第1张

因为3位二进制正好表示1位8进制数,所以,将8进制数的每一位展开成3位二进制就OK了。比如:
012 (八进制) = 000 001 010 = 1010 (二进制)

八进制数转换成二进制数:只要将每位八进制数用三位二进制数替换,即可完成转换,例如,把八进制数(643503)8,转换成二进制数,则
(6 4 3 5 0 3)884216==0420==110
4==0400==100
因为是二进制,所以只有0。1两个数字,有数的地方用1表示。

#include "stdioh"

int fact(int n)

{

if(n<2)

return n; else

return fact(n/2)10+n%2;

}

int fun(char s)

{

int i,t;

int sum=0;

for(i=0;s[i];i++)

{

if(s[i]>='0'&&s[i]<='7')

t=s[i]-'0';

sum=sum8+t;

}

return fact(sum);

}

int main()

{

char s[50];

printf("输入八进制的数:");

scanf("%s",s);

int m=fun(s);

printf("输出二进制数为:%d",m);

return 0;

}

希望采纳,谢谢。


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

原文地址: http://outofmemory.cn/yw/13374506.html

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

发表评论

登录后才能评论

评论列表(0条)

保存