描述
写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串(注意可能存在的一个测试用例里的多组数据)。
输入描述:
输入一个十六进制的数值字符串。
输出描述:
输出该数值的十进制字符串。
示例1
输入:
0xA
输出:
10
#define _CRT_SECURE_NO_WARNINGS 1
#include <bits/stdc++.h>
using namespace std;
//字符转数字
int CharToInt(char c) {
if (c >= '0' && c <= '9')
return c - '0';
else
return c + 10 - 'A';
}
int main() {
string str;
while (cin >> str)
{
str = str.substr(2);//0x.....截取有效部分
long long number = 0;
for (int i = 0; i < str.size(); ++i) {
number *= 16;
number += CharToInt(str[i]);
}
cout << number << endl;
}
return 0;
}