基础练习 ——十六进制转十进制
Posted wlyperfect
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基础练习 ——十六进制转十进制相关的知识,希望对你有一定的参考价值。
资源限制
时间限制:1.0s 内存限制:512.0MB
问题描述
从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。
注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。
样例输入
FFFF
样例输出
65535
1 #include<iostream> 2 #include<string> 3 #include<cmath> 4 using namespace std; 5 int main() 6 { 7 string str; 8 while(cin >> str) 9 { 10 int len = str.length(); 11 long long int res = 0; 12 int t = len; 13 for(int i = 0;i < len;i++) 14 { 15 if(isdigit(str[i])) 16 { 17 res = res + (str[i] - ‘0‘) * pow(16,t-1); 18 t--; 19 } 20 else 21 { 22 res = res + (str[i] - ‘A‘ + 10) * pow(16,t-1); 23 t--; 24 } 25 } 26 cout << res << endl; 27 } 28 return 0; 29 }
以上是关于基础练习 ——十六进制转十进制的主要内容,如果未能解决你的问题,请参考以下文章