/*===================================== 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 乘权累加法 ======================================*/
1 #include<stdio.h> 2 int main() 3 { 4 char n[50]; 5 int m,i,ans,t; 6 ans=0; 7 scanf("%s",n); 8 scanf("%d",&m); 9 for(i=0;n[i]!='\0';i++) 10 { 11 if(n[i]>='0'&&n[i]<='9') 12 { 13 t=n[i]-'0'; 14 ans=ans*m+t; 15 } 16 else if(n[i]>='A'&&n[i]<='Z') 17 { 18 t=n[i]-'A'+10; 19 ans=ans*m+t; 20 } 21 else 22 { 23 t=n[i]-'a'+10; 24 ans=ans*m+t; 25 } 26 } 27 printf("%d\n",ans); 28 return 0; 29 }