写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串(多组同时输入)
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
int main(void)
{
string str;
int i = 0, len, sum;
while (cin>>str)
{
len = str.size();
sum = 0;
for (i = len - 1; i >= 0; --i)
{
if (str[i] >= '0' && str[i] <= '9') // 数字字符的转换
{
sum += (str[i] - '0') * pow(16,len - 1 - i);
}
else if (str[i] >= 'A' && str[i] <= 'F')
{
sum += (str[i] - 55) * pow(16, len - 1 - i);
}
}
cout << sum << endl;
}
}