对于进制小于十的进制的转化,以八进制为例,代码如下
void PrintOct(int num)
{
if(num >= 8)
{
PrintOct(num / 8);
PrintOct(num % 8);
}
else
{
putchar(num + '0');
}
}
对于进制大于十的转化,以十六进制为例,假设用小写字母表示
void PrintDex(int num)
{
if(num >= 16)
{
PrintDex(num / 16);
PrintDex(num % 16);
}
else if(num >= 10 && num < 16)
{
putchar(num + 'a' - 1);
}
else
{
putchar(num + '0');
}
}