M进制转10进制

来源:互联网 发布:人力资源 知乎 编辑:程序博客网 时间:2024/06/10 11:37

STL解法

#include <bits/stdc++.h>using namespace std;int m;char s[105];int main(){cin>>s>>m;cout<<strtol(s,NULL,m)<<endl;return 0;} 
#include<iostream>using namespace std;int main(){int a,b,c;cin>>a>>b;int j=1;while(a>0){c+=a%10*j;//取最后一位*1a/=10;j*=b;//之后最后一位按权乘}cout<<c<<endl;}
#include <stdio.h>#include <string.h>int main(){    int m,i;    char n[100];    scanf("%s%d",n,&m);    int a[100],s = 0;    for(i = 0;i < strlen(n);i++){        if(n[i] >= '0' && n[i] <= '9')            a[i] = n[i]-'0';        else            a[i] = n[i]-'A'+10;    }    int j = i-1;    for(i = i-1;i >= 0;i--){        s += a[i]*pow(m,j-i);    }    printf("%d",s);    return 0;}
原创粉丝点击