zoukankan      html  css  js  c++  java
  • 十六进制转十进制

      基础练习 十六进制转十进制  

    时间限制:1.0s   内存限制:512.0MB
    问题描述
      从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
      注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。
    样例输入
    FFFF
    样例输出
    65535
     
     
    #include <iostream>
    #include <cstring>
    #include <cmath>
    #include<stdio.h>
    #include <stdlib.h>
    using namespace std;
    void pow1(char *s)
    {
        int len =strlen(s);
        __int64 a=0;
        for(int i=0;i<len;i++)
        {
            if(s[i]<=57&&s[i]>=48)
            {
                a+=(s[i]-48) * pow(16,len-i-1);
            }
            else
            {
                a+=(s[i]-55)*pow(16,len-i-1);
            }
        }
        printf("%I64d
    ",a);
    }
    int main()
    {
        char s[21];
        while(cin>>s)
        {
            pow1(s);
        }
        return 0;
    }
  • 相关阅读:
    ToString 格式化数值
    肾积水
    十月一日
    9月27日 星期六
    080929 气温骤降
    東京の空
    9月26日 星期五
    9月30日 星期二
    粉蓝房子&电影
    080922 雨
  • 原文地址:https://www.cnblogs.com/Deng1185246160/p/3569955.html
Copyright © 2011-2022 走看看