1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > c中输入一个十进制数 输出它的八进制二进制以及十六进制

c中输入一个十进制数 输出它的八进制二进制以及十六进制

时间:2021-08-27 00:39:31

相关推荐

c中输入一个十进制数 输出它的八进制二进制以及十六进制

代码:

#include <stdio.h>int main(){int i;scanf("%d",&i);printf("八进制为:%o\n",i);printf("十六进制为:%x\n",i);printf("十六进制为:%X\n",i);return 0;}

可以看出来,16进制小写‘x’输出的字母就是小写的,大写‘X’输出的字母就是大写的

想要以16进制或者8进制输入时:

以16进制为例,将输入语句改为:

scanf("%x",&i);

b:二进制

o:八进制

d:十进制

x,X:16进制

程序里是体现不出二进制的哦!

下面两种转换方法

递归转换进制(int型)

#include<stdio.h> int fact(int n) {if(n<2) //将 2 换成其它数如 8 就可输出 8 进制的结果return n; else{return fact(n/2)*10+n%2; //将二进制结果整个输出 } } int main(){int n;scanf("%d",&n); printf("%d",fact(n)); return 0;}

循环:

#include<stdio.h>main(){int k,a[101],i=0;printf("请你输入一个十进制整数\n");scanf("%d",&k);while (k>0){a[i]=k%2;k/=2;i++;} for(i=i-1;i>=0;i--)//i=i-1 的原因 ,条件k>0为假结束循环,但i++已经运行了,所以 i=i-1printf("%d",a[i]);}

运行结果:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。