标题:C++关于m进制转化十进制,求建议
只看楼主
q673985652
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2013-5-9
结帖率:50%
已结贴  问题点数:10 回复次数:3 
C++关于m进制转化十进制,求建议
#include<iostream>
#include<string>
#include<cmath>
using namespace std;
int main()
{
string n;
cin>>n;//需要转化的数
int len=n.length();
double m,tot=0.0;//m为“n”是多少进制数
int i = 0;
    cin>>m;
    while(i<len)
    {
       tot+=(n[i]-'0')*std::pow(m,len-i-1);
        i++;
    }
    cout<<tot;
    return 0;
}


//************* 如何在此基础上修改成m=16(即十六进制转化为十进制)也通过?拜托各位了


[ 本帖最后由 q673985652 于 2013-5-22 18:06 编辑 ]
搜索更多相关主题的帖子: include double 十进制 
2013-05-22 17:56
q673985652
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2013-5-9
得分:0 
。。咳咳
2013-05-22 18:06
lzj12530
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:264
专家分:841
注 册:2013-3-28
得分:10 
ASCII码值中 数字和字母(区分大小写)不是连续在一起的。所以你要求单独转换16进制就需要针对的改,而且应该规定大小写 或者进行一个判断例如.

C++菜鸟
2013-05-23 09:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-407760-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016426 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved