使用字符串数组
#include <iostream>
using namespace std;
int main() {
int n,m,j;
int r[100];
char str[18]="0123456789ABCDEF";
while(scanf("%d%d",&n,&m)!=EOF){
int tmp=1,i=0;//开始把这句话放到上面了,导致每次循环没有初始化;
if(n<0){
printf("-");
n=-n;
}
while(tmp!=0){//除R取余法,余数存到数组里
r[i]=n%m;
n/=m;
tmp=n;
i++;
}
for(j=i-1;j>=0;j--)printf("%c",str[r[j]]);
printf("\n");
}
return 0;
}