十进制数转换为K进制数问题
我写了一个进制转换程序,结果是错误的,求各位大侠帮我改一下,感激不尽。。。。。程序如下:
#include<stdio.h>
void swap(int n,int K)
{
int s;
printf("\t");
do
{
s=n%K;
n=n/K;
if(s==0)printf("\b\b0");
else
{
if(K==16)
switch(s)
{
case '10':printf("\b\bA");break;
case '11':printf("\b\bB");break;
case '12':printf("\b\bC");break;
case '13':printf("\b\bD");break;
case '14':printf("\b\bE");break;
case '15':printf("\b\bF");break;
default:printf("\b\b%d",s);
}
else printf("\b\b%d",s);
}
}while(n!=0);
printf("\f\n");
}
void main()
{
int n,K;
printf("请输入要转换的数(十进制):");
scanf("%d",&n);
printf("请输入要转换成的进制K:");
scanf("%d",&K);
printf("转换后的结果如下:\n");
swap(n,K);
}
程序运行结果:
结果中0不能显示。。。。