问题描述
从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。
样例输入
FFFF
样例输出
65535
思路
1.输入字符串形式的数,然后倒着转换
for(int j=s.length();j>0;j--)
这样有利于阶数的上升,后面的阶数小
2.运用pow函数求幂,pow(数,次方)
引入<math.h>库
3.double要去科学计数法,去小数
引入<iomanip>库
cout<<fixed<<setprecision(0)<<sum;
代码
#include<iostream>
#include<string>
#include<math.h>
#include<iomanip>
using namespace std;
int main(){
string s;
int i=0;
double sum=0;
cin>>s;
for(int j=s.length();j>0;j--){
switch(s[j-1]){ <