一种是从个位开始:
while(cin>>b!=0){
if(b==0) break;
ans=0;shu=0;
gets(s);
for(int i=1;i<=strlen(s)-1;i++)
a[i]=s[i]-'0';
int k=0;
for(int i=strlen(s)-1;i>=1;i--)
{
shu+=a[i]*pp(b,k);
k++;
}
包含一个子函数
int pp(int x,int y){ //x^y
if(y==0) return 1;
int xx=x;
while(--y!=0)
xx*=x;
return xx;
}
第二种是从最高位开始:
while(scanf("%d",&b)&&b){
scanf("%s",a);
int len=strlen(a);
int inum=0;
for(int i=0;i<len;i++)
inum=inum*b+a[i]-'0';
}
第二种是在sd那儿得来的,不过真的很巧妙