十进制打印 转换二进制 十六进制
2016-10-21 20:25
309 查看
#include <stdio.h>
int main()
{
int a;
printf("please enter a number:\n");
scanf("%d",&a);
printf("the decimal number is:%d\n",a);
int d=a;
int b[50]={0}
,i=0;
printf("the binary number is:");
for(i=0;i<50;i++)
{
b[i]=a%2;
a=a/2;
if(a==0 || a==1){
b[i+1]=a;
break;
}
}
for(i++;i>=0;i--)
printf("%d",b[i]);//到此为2进制转换
printf("\n");
int c[50]={0}
,j;
printf("the Hexadecimal number is:");
for(j=0;j<50;j++)
{
c[j]=d%16;
switch(c[j])
{
case 10: c[j]='A';break;
case 11: c[j]='B';break;
case 12: c[j]='C';break;
case 13: c[j]='D';break;
case 14: c[j]='E';break;
case 15: c[j]='F';break;
case 9 : c[j]='9';break;
case 8 : c[j]='8';break;
case 7 : c[j]='7';break;
case 6 : c[j]='6';break;
case 5 : c[j]='5';break;
case 4 : c[j]='4';break;
case 3 : c[j]='3';break;
case 2 : c[j]='2';break;
case 1 : c[j]='1';break;
case 0 : c[j]='0';break;
}d=d/16;
if (d==0)
break;
}
for(j++;j>=0;j--)
printf("%c",c[j]);
printf("\n");//到此为16进制转换
return 0;
}
用辗转相除法再将数组逆向输出
int main()
{
int a;
printf("please enter a number:\n");
scanf("%d",&a);
printf("the decimal number is:%d\n",a);
int d=a;
int b[50]={0}
,i=0;
printf("the binary number is:");
for(i=0;i<50;i++)
{
b[i]=a%2;
a=a/2;
if(a==0 || a==1){
b[i+1]=a;
break;
}
}
for(i++;i>=0;i--)
printf("%d",b[i]);//到此为2进制转换
printf("\n");
int c[50]={0}
,j;
printf("the Hexadecimal number is:");
for(j=0;j<50;j++)
{
c[j]=d%16;
switch(c[j])
{
case 10: c[j]='A';break;
case 11: c[j]='B';break;
case 12: c[j]='C';break;
case 13: c[j]='D';break;
case 14: c[j]='E';break;
case 15: c[j]='F';break;
case 9 : c[j]='9';break;
case 8 : c[j]='8';break;
case 7 : c[j]='7';break;
case 6 : c[j]='6';break;
case 5 : c[j]='5';break;
case 4 : c[j]='4';break;
case 3 : c[j]='3';break;
case 2 : c[j]='2';break;
case 1 : c[j]='1';break;
case 0 : c[j]='0';break;
}d=d/16;
if (d==0)
break;
}
for(j++;j>=0;j--)
printf("%c",c[j]);
printf("\n");//到此为16进制转换
return 0;
}
用辗转相除法再将数组逆向输出
相关文章推荐
- 二进制、八进制、十进制、十六进制之间的转换
- 二进制、八进制、十进制、十六进制之间转换
- [JAVA]二进制,八进制,十六进制,十进制间进行相互转换
- 二进制、八进制、十进制、十六进制之间转换
- 二进制、八进制、十进制、十六进制之间转换
- (转 枫伶忆)二进制 八进制 十进制 十六进制之间转换
- [JAVA]二进制,八进制,十六进制,十进制间进行相互转换
- 二进制、八进制、十进制、十六进制之间转换
- java中进行二进制,八进制,十六进制,十进制间进行相互转换
- Java中二进制、十进制、十六进制及ASCII码与String及字节数组与十六进制之间的转换
- [JAVA]二进制,八进制,十六进制,十进制间进行相互转换
- java中各进制之间的转换(十进制转十六进制、十进制转二进制、二进制转十进制、二进制转十六进制)
- 二进制、八进制、十进制、十六进制之间的转换
- ZOJ 3713 In 7-bit (题意不好理解,十进制、二进制、十六进制的转换问题)
- 十进制,八进制,十六进制,二进制相互转换大全
- 二进制、八进制、十进制、十六进制的转换总结规律
- 将十进制转换为二进制和十六进制
- java中进行二进制,八进制,十六进制,十进制间进行相互转换
- 十进制,二进制,八进制,十六进制之间的转换,左右移运算符
- java十进制转换为二进制、八进制和十六进制