#include <stdio.h>
#include <string.h>int NTOD(char *nn,int n)
{int sum=0,weight=1;int len=strlen(nn);for(int i=len-1;i>=0;i--){if(nn[i]>='A'&&nn[i]<='Z')sum=sum+(nn[i]-'A'+10)*weight;else if(nn[i]>='a'&&nn[i]<='z')sum=sum+(nn[i]-'a'+10)*weight;else if(nn[i]>='0'&&nn[i]<='9')sum=sum+(nn[i]-'0')*weight;weight=weight*n;}return sum;
}
void DTOM(int d,int n,char *mm)
{int m=0,r;do{r=d%n;if(r>=10)mm[m++]=r-10+'A';elsemm[m++]=r+'0';d/=n; }while(d!=0);mm[m]='\0';for(int i=0,j=m-1;i<j;i++,j--){char t=mm[i];mm[i]=mm[j];mm[j]=t;}}
int main(int argc, char *argv[])
{ int n,m;char nn[100],mm[100];printf("输入N进制数XX转换为M进制数\n"); scanf("%d %s %d",&n,nn,&m);int d=NTOD(nn,n);DTOM(d,m,mm);printf("%s\n",mm);system("PAUSE"); return 0;
}