/*=====================================
1475 m进制转十进制
题目描述 Description
将m进制数n转化成一个十进制数 m<=16
题目保证转换后的十进制数<=100
输入描述 Input Description
共一行
n和m
输出描述 Output Description
共一个数
表示m进制的n化成十进制的数
样例输入 Sample Input
1010 2
样例输出 Sample Output
10
数据范围及提示 Data Size & Hint
乘权累加法
======================================*/
题目描述——m进制转十进制
#include<stdio.h>
int main()
{
char n[];
int m,i,ans,t;
ans=;
scanf("%s",n);
scanf("%d",&m);
for(i=;n[i]!='\0';i++)
{
if(n[i]>=''&&n[i]<='')
{
t=n[i]-'';
ans=ans*m+t;
}
else if(n[i]>='A'&&n[i]<='Z')
{
t=n[i]-'A'+;
ans=ans*m+t;
}
else
{
t=n[i]-'a'+;
ans=ans*m+t;
}
}
printf("%d\n",ans);
return ;
}
参考代码——乘权累加法