x是进制数,s1是代转的数字。
以字符串形式存储。
#include<iostream>
#include<string.h>
using namespace std;
int a,b,c,d,x;
string s1,s2,yu;
void zhuan()
{
int chu=0,shang;
s2="";
for (a=0;a<s1.size();a++)
{
chu=chu*10+(s1[a]-'0');
shang=chu/x;
if (shang!=0 || s2!="")
{
s2+=(char)(shang+'0');
}
chu=chu%x;
}
yu=(char)(chu+'0')+yu;
if (s2=="") s2="0";
s1=s2;
}
void suan(char x)
{
if (x-'0'>=0 && x-'0'<=9) {cout<<x-'0'; return;}
cout<<(char)('A'+x-'0'-10);
}
int main()
{
//转X进制
while (cin>>x>>s1)
{
yu="";
while (s1!="0")
{
zhuan();
}
for (a=0;a<yu.size();a++) suan(yu[a]);
cout<<endl;
}
}