利用递归进制转换(倒叙输出)

 # include <stdio.h>


void output(int n, int r)
{
char tab[] = "0123456789ABCDEFGHIJKLMN" ;
if (n == 0) return ;
output (n/r, r) ;
printf ("%c", tab[n%r]) ;
}


int main ()
{
int n, r ;
while (scanf ("%d%d", &n, &r))
{
if (n < 0){
printf ("-") ;
n = -n ;
}
output(n,r) ;//把n用r进制输出
printf ("\n") ;
}
return 0 ;
}

 

posted @ 2012-01-26 12:35  朝圣の路  阅读(265)  评论(0编辑  收藏  举报