递归应用_进制转换_2_8_16

来源:互联网 发布:kudo编程 编辑:程序博客网 时间:2024/06/06 00:13
#include<stdio.h>
#define P printf


void digui(int x,int n){
int a=0;
if(n!=2&&n!=8&&n!=16){
P("此程序只适用于2,8,16进制的换算");
return;
}
if(x<1)
{
return;
}
a=x%n;
x=x/n;
digui(x,n);
if(a>9){


switch(a){
case 10:
        P("A\t");
break;
        case 11:
        P("B\t");
break;
case 12:
        P("C\t");
break;
case 13:
        P("D\t");
break;
case 14:
        P("E\t");
break;
case 15:
        P("F\t");
break;
default:
break;
}


}
else{
P("%d\t",a);
}
}


void main(){


    digui(13579,16);
getchar();
}