觉得你的代码太复杂了,看一看我的代码的核心
转为十进制
```cpp
for(int i=a.length()-1;i>=0;i--){
if('0'<=a[i] && a[i]<='9') nn=a[i]-'0';
else nn=a[i]-'A'+10;
tot+=(nn*f);
f*=n;
}
```
输出
```cpp
const string aa="0123456789ABCDEFG";
void print(int jinzhi,int num){
if(num/jinzhi!=0) print(jinzhi,num/jinzhi);
cout<<aa[num%jinzhi];
}
```
nn是临时变量,f是累乘变量,tot是累加变量,n是进制。
输出不用多说了吧
@[shixuanbin](/user/857349)
by zzh_2010 @ 2023-10-06 13:28:13
可能是输出样例颠倒了
by jhlcxoi114514 @ 2023-10-14 20:54:40