十进位制数转换二,十六进制数程序.要求:(1) 编写一个函数实现十进制数转换其它进制数.(2) 在主

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/01 00:31:54
十进位制数转换二,十六进制数程序.要求:(1) 编写一个函数实现十进制数转换其它进制数.(2) 在主

十进位制数转换二,十六进制数程序.要求:(1) 编写一个函数实现十进制数转换其它进制数.(2) 在主
十进位制数转换二,十六进制数程序.要求:(1) 编写一个函数实现十进制数转换其它进制数.(2) 在主

十进位制数转换二,十六进制数程序.要求:(1) 编写一个函数实现十进制数转换其它进制数.(2) 在主
#include
#include
#define N 30 //此外定义转换成二进制的数字位数最长30位
void change(int x)
{switch(x)
{
case 10:
printf("A\n"); break;
case 11:
printf("B\n"); break;
case 12:
printf("C\n"); break;
case 13:
printf("D\n"); break;
case 14:
printf("E\n"); break;
case 15:
printf("F\n"); break;
}
}
void main()
{
int i=0,b[N],k,x;
do{
printf("请输入要转换的数x:\n");
scanf("%d",&x);
printf("\n请选择转换进制:\n");
printf("1:十进制转二进制:\n");
printf("2.十进制转八进制:\n");
printf("3.十进制转十六进制:\n");
printf("0.退出:\n\n\n");
printf("请选择:\n");
scanf("%d",&k);
switch(k)
{
case 1: system("cls");
if(x==1||x==0) printf("转换结果为\n%d\n",x);
else
{while(x>1)
{
b[i++]=x%2;
x=x/2;
}
b[i]=1;
printf("转换成二进制结果是为:\n");
for(i;i>=0;i--)
printf("%d",b[i]);
printf("\n");}
break;

case 2:
system("cls");
if(x=8)
{
b[i++]=x%8;
x=x/8;
}
b[i]=x;
printf("转换成八进制结果是为:\n");
for(i;i>=0;i--)
printf("%d",b[i]);
printf("\n");
}
break;
case 3:
system("cls");
if(x=0;i--)
{if(b[i]