RT,代码如下:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
char s[1005];
ll x_8,x_10,x_16[1005];
int main()
{
cin>>s;
sscanf(s,"%lld",&x_8);
ll i=0;
while(x_8){
x_10+=(x_8%10)*pow(8,i++);//当前八进制数的最后一位*8的i次方
x_8/=10;
}
i=1;
while(x_10){
x_16[i]=x_10%16;
x_10/=16;
i++;
}
while(i--&&i>=1){
if(x_16[i]>=10){
cout<<char(x_16[i]+87);
}
else cout<<x_16[i];
}
return 0;
}