模拟短除法:
#include <iostream>
#include <stdio.h>#include <algorithm>
#define INF 1005
using namespace std;
int main()
{
int n,r;
while(scanf("%d %d",&n,&r)!=EOF&&r) {
char ch[]="0123456789ABCDEF";
char s[INF];
if(n < 0) {
n = -n;
cout << "-";
} //注意负数;
;
int j = 0;
while(n) {
s[j++] = ch[n % r];
n /= r;
}
;
for(int i=j-1; i>=0; i--)
cout << s[i];
cout << endl;
}
return 0;
}