#include <bits/stdc++.h>
using namespace std;
int main(){
string str="";
int num=0;
while(getline(cin,str)){
str.erase(0,2);//擦除0X
int count=0;
for(int i=str.size()-1;i>=0;i--){
int temp=0;
if(str[i]>='A') temp=str[i]-'A'+10;
else temp=str[i]-'0';
num=num+temp*pow(16, count++);//pow函数为求指数
}
cout<<num<<endl;
num=0;
}
return 0;
}
HJ5 进制转换(C++)- 简单、字符串
最新推荐文章于 2026-08-22 15:39:47 发布
这是一个C++程序,它读取包含十六进制数的字符串,去掉前缀'0X',然后从后往前遍历每个字符,将其转换为对应的十进制值。通过使用`pow(16, count++)`来计算十六进制位的权重,并累加到结果`num`中。最后输出转换后的十进制数值。

- 简单、字符串&spm=1001.2101.3001.5002&articleId=125377018&d=1&t=3&u=6bf7433e636a45f2a351167997176901)
1643

被折叠的 条评论
为什么被折叠?



