玩命加载中 . . .

进制转换3


http://t.cn/AiCuig9B

描述

写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串(注意可能存在的一个测试用例里的多组数据)。

输入描述:

输入一个十六进制的数值字符串。

输出描述:

输出该数值的十进制字符串。

示例1

输入:

0xA

输出:

10
#define _CRT_SECURE_NO_WARNINGS 1
#include <bits/stdc++.h>
using namespace std;

//字符转数字
int CharToInt(char c) {
	if (c >= '0' && c <= '9')
		return c - '0';
	else
		return c + 10 - 'A';
}

int main() {
	string str;
	while (cin >> str)
	{
		str = str.substr(2);//0x.....截取有效部分
		long long number = 0;
		for (int i = 0; i < str.size(); ++i) {
			number *= 16;
			number += CharToInt(str[i]);
		}
		cout << number << endl;
	}
	return 0;
}

文章作者: Jack Tim
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Jack Tim !
评论
  目录