描述 写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串。 知识点 字符串,循环,函数,指针 运行时间限制 10M 内存限制 128 输入 输入一个十六进制的数值字符串。 输出 输出该数值的十进制字符串。 样例输入 0xA 样例输出 10
#include<iostream> #include<vector> #include<string> #include<algorithm> #include<cmath> using namespace std; int main(){ string s; cin >> s; int sum = 0, base = 1; int len = s.size(); for (int i = len - 1; i>1; i--){ if (islower(s[i])) { sum += (s[i] - 87)*base; base = base * 16; } else if (isupper(s[i])){ sum += (s[i] - 55)*base; base = base * 16; } else if (isdigit(s[i])){ sum += (s[i] - '0')*base; base = base * 16; } } cout << sum; return 0; }