• 十六进制转八进制


    题目链接:http://lx.lanqiao.cn/problem.page?gpid=T51

    demo:

    #include <iostream>
    #include <string>
    using namespace std;
    
    int main()
    {
        int Number;
        cin >> Number;
        for(int k = 1; k <= Number; k++) {
            string String_Hex, String_Binary;
            cin >> String_Hex;
            String_Binary = "";
            for(int i = 0;i < String_Hex.length(); i++){
                switch(String_Hex[i]) {
                    case '0':String_Binary += "0000"; break;
                    case '1':String_Binary += "0001"; break;
                    case '2':String_Binary += "0010"; break;
                    case '3':String_Binary += "0011"; break;
                    case '4':String_Binary += "0100"; break;
                    case '5':String_Binary += "0101"; break;
                    case '6':String_Binary += "0110"; break;
                    case '7':String_Binary += "0111"; break;
                    case '8':String_Binary += "1000"; break;
                    case '9':String_Binary += "1001"; break;
                    case 'A':String_Binary += "1010"; break;
                    case 'B':String_Binary += "1011"; break;
                    case 'C':String_Binary += "1100"; break;
                    case 'D':String_Binary += "1101"; break;
                    case 'E':String_Binary += "1110"; break;
                    case 'F':String_Binary += "1111"; break;
                    default:break;
                }
            }
            if(String_Binary.length() % 3 == 1) String_Binary = "00" + String_Binary;
            else if(String_Binary.length() % 3 == 2) String_Binary = '0' + String_Binary;
            int Sign_Leading_Zero = 0;
            for(int i = 0;i <= String_Binary.length() - 3; i += 3){
                int Digit_Number = 4 * (String_Binary[i] - '0') + 2 * (String_Binary[i+1] - '0') + (String_Binary[i+2] - '0');
                if(Digit_Number) Sign_Leading_Zero = 1;
                if(Sign_Leading_Zero) cout << Digit_Number;
            }
            cout << endl;
        }
        return 0;
    }
  • 相关阅读:
    expects parameter 1 to be resource, array given 错误
    PHP 多维数组处理,将1维或者多维数组处理成字符串
    uchome realname_set()参数
    ASP.NET 开源CMS汇总
    微软 Visual Studio .net 2005 常用插件搜罗
    C#中DllImport用法和路径问题
    XSLT输出的HTML空元素导致jQurey解析出错
    hdu1874畅通工程续
    Super Prime
    Beautiful Year
  • 原文地址:https://www.cnblogs.com/XuYiting/p/9700921.html
Copyright © 2020-2023  润新知