本文共 784 字,大约阅读时间需要 2 分钟。
资源限制
时间限制:1.0s 内存限制:512.0MB
问题描述
从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。样例输入
FFFF
样例输出
65535
还是将十六进制数先转化成二进制数,,在转化成十进制数。
#include#include using namespace std;typedef long long ll;int main(){ ios::sync_with_stdio(false); string s1,s2;//s1为输入的原始的十六进制串,s2为转化成的二进制串 while(cin>>s1) { s2="";//初始化 for(int i=0;i =0;i--) { sum+=(s2[i]-'0')*c; c*=2; } cout< <
import java.util.Scanner;public class Main { public static void main(String[] args) throws Exception { String s; Scanner sc=new Scanner(System.in); s=sc.nextLine(); long h=Long.parseLong(s,16); System.out.println(h); }}
转载地址:http://htyzi.baihongyu.com/