int y = 0, product = 1; // product 在循环中会不断累乘p, 得到 p^1, p^2, p^2...
while (x){
y += x % 10 * product;
x /= 10;
product *= p;
}
转化为10进制
int z[40], num = 0; // 数组 z 存放Q进制数y的每一位, num 为数位
do {
z[num ++ ] = y % Q;
y /= Q;
} while (y);
#include <iostream>
#include <cstdio>
using namespace std;
const int N = 100;
int a, b, d;
int res[N];
int main()
{
cin >> a >> b >> d;
int c = a + b;
int num = 0;
do {
res[num ++ ] = c % d;
c /= d;
} while(c);
for (int i = num - 1; i >= 0; i -- ){
printf("%d", res[i]);
}
printf("\n");
return 0;
}