问题及代码:
#include<stdio.h>
void binary(int, int);
int main()
{
int N, R;
while(scanf("%d %d", &N, &R)!=EOF)
{
if(N==0)
printf("%d",0);
else if(N<0)
{
printf("-");
N=-N;
}
binary(N, R);
printf("\n");
}
return 0;
}
void binary(int x, int y)
{
int m;
if(x==0)
return;
else
{
binary(x/y, y);
m=x%y;
if(m<10)
printf("%d", m);
else
printf("%c", 'A'+m-10);
}
}
运行结果: