写一个16进制转10进制的C++程序
时间: 2023-11-06 18:06:02 浏览: 82
下面是一个简单的C++程序,可以将16进制数转换为10进制数:
```cpp
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
int hexToDec(string hex) {
int dec = 0;
int size = hex.size();
for (int i = 0; i < size; i++) {
char c = hex[i];
int n = 0;
if (c >= '0' && c <= '9') {
n = c - '0';
} else if (c >= 'A' && c <= 'F') {
n = c - 'A' + 10;
} else if (c >= 'a' && c <= 'f') {
n = c - 'a' + 10;
}
dec += n * pow(16, size - i - 1);
}
return dec;
}
int main() {
string hex;
cout << "请输入一个16进制数:" << endl;
cin >> hex;
int dec = hexToDec(hex);
cout << hex << " 的10进制表示为:" << dec << endl;
return 0;
}
```
输入一个16进制数,程序将会输出它的10进制表示。以上代码仅供参考,实际使用中建议添加输入验证等功能,以确保程序的正确性和健壮性。
阅读全文