蓝桥杯 基础练习 十六进制转十进制

问题描述
  从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
  注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。
样例输入
FFFF
样例输出
65535
 
代码:
#include <iostream>
#include <cstdio>
using namespace std;
char s[9];
long long d;
int main() {
    scanf("%s",s);
    for(int i = 0;s[i];i ++) {
        d = d * 16 + (isdigit(s[i]) ? s[i] - '0' : s[i] - 'A' + 10);
    }
    printf("%lld",d);
}
原文地址:https://www.cnblogs.com/8023spz/p/10082228.html