#include
/*該函式可以實現小於整型資料的任意進位制之間轉換*/
/*以下函式將a進位制數s轉換成b進位制並輸出*/
void f(int a,int b,char s[])
{ char r[17];
int i,n,t,k;
for(n=strlen(s)-1,i=t=0;*(s+i)!="\0";i++,n--) /*這裡先轉換成十進位制數*/
{ if(*(s+i)
t+=(*(s+i)-"0")*int(pow(a,n));
else
t+=(*(s+i)-"A"+10)*int(pow(a,n));
}
for(i=0;t!=0;i++) /*再轉換成b進位制*/
{ k=t%b;
if(k>9)r[i]="A"+k-10;
else r[i]="0"+k;
t/=b;
r[i]="\0";
s=strrev(r);
printf("%s",s);
#include
#include
#include
/*該函式可以實現小於整型資料的任意進位制之間轉換*/
/*以下函式將a進位制數s轉換成b進位制並輸出*/
void f(int a,int b,char s[])
{ char r[17];
int i,n,t,k;
for(n=strlen(s)-1,i=t=0;*(s+i)!="\0";i++,n--) /*這裡先轉換成十進位制數*/
{ if(*(s+i)
t+=(*(s+i)-"0")*int(pow(a,n));
else
t+=(*(s+i)-"A"+10)*int(pow(a,n));
}
for(i=0;t!=0;i++) /*再轉換成b進位制*/
{ k=t%b;
if(k>9)r[i]="A"+k-10;
else r[i]="0"+k;
t/=b;
}
r[i]="\0";
s=strrev(r);
printf("%s",s);
}