关于进制转换,请帮忙
有个题目,用递归的方法实现十六进制转10进制。我用的是一般的,没用递归void main()
{
char a[16]="123456789ABCDEF",char c[20];
int b[16]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
int m,i,j,k,sum=0;
printf("请输入你要的十六进制:");
gets(c);
m=strlen(c);
for(j=0;j<m;j++)
{for(i=0;i<16;i++)
{ if(c[j]==a[i])
{ k=m-j-1;
sum=sum+b[i]*pow(16,k);
}
}}
printf("你的转换后十进制为:%d",sum);
}
请大家帮忙给个递归的方式吧。谢谢了