zoukankan      html  css  js  c++  java
  • lqb 基础练习 十六进制转十进制

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

    时间限制:1.0s   内存限制:512.0MB
       
    问题描述
      从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
      注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。
    样例输入
    FFFF
    样例输出
    65535
     
    分析:
      十六进制转化为十进制的方法:
        十六进制从个位开始,将每一位所对应的十进制数 * pow (16, j) 求和
     
    C/C++代码实现(AC):
      
     1 #include <iostream>
     2 #include <algorithm>
     3 #include <cstring>
     4 #include <cstdio>
     5 #include <cmath>
     6 #include <stack>
     7 #include <map>
     8 #include <queue>
     9 
    10 using namespace std;
    11 
    12 int main()
    13 {
    14     char s[10];
    15     scanf("%s", s);
    16     long long len = strlen(s), temp = 0;
    17     for (int i = len - 1, j = 0; i >= 0; --  i, ++ j)
    18         if (s[i] >= '0' && s[i] <= '9' )temp += pow (16, j) * (s[i] - '0');
    19         else temp += pow(16, j) * (s[i] - 'A' + 10);
    20     printf("%lld
    ", temp);
    21     return 0;
    22 }
  • 相关阅读:
    asp.net mvc 缓存
    C#版 Socket编程(最简单的Socket通信功能)
    c# 读取嵌入式文件
    js 对象 copy 对象
    double截取小数点位数
    c#读取excel
    观察者设计模式
    xml序列化方式
    sicily Huffman coding
    sicily Fibonacci 2
  • 原文地址:https://www.cnblogs.com/GetcharZp/p/9033713.html
Copyright © 2011-2022 走看看