思路 n对 xa取模,就是xa-1 位上的数字,因为模出来的数不足xa 举例来说就是5&21=1,这个1就是20位上的1 当前位取完后,n/=xa,表示n将对x(a+1)进行取模(进入下一位) 重复此操作直至n=0。 代码实现 //把n转换为x进制下的数 int turn(int n, int x) {//a1代表当前是对对应十进制的第几位进行操作int ans = 0, a1 = 1;while(n) {ans += (n % x) * a1;n /= x; //要进位咯 a1 *= 10;}return ans; }