• 递归进制转换


    算法问题总是很复杂,我每次都觉得会了,每次一到稍微涉及一点儿算法的地方都要想好久。

     

    以下 10进制转换成2进制:

     

    #include <iostream>
    
    void tenToB(int a);
    void packageForT2B(int a);
    int main() {
        
        packageForT2B(13);
        packageForT2B(6);
        return 0;
    }
    
    void packageForT2B(int a){
        printf("输入的十进制数字是%d,它的二进制形式是:
    ",a);
        tenToB(a);
        printf("
    ");
    }
    void tenToB(int a){
        int rest=a%2;
        if(a/2>2){
            tenToB(a/2);
        }else{
            printf("%d",a%2);
        }
        printf("%d",rest);
    }

     

    10进制转化成16进制。

    示例代码:

    #include <iostream>
    
    void tenToHex(int a);
    
    void function1(void);
    
    void packageForT2H(int a);
    int main() {
        //function1
        
        packageForT2H(100);
        packageForT2H(239);
        return 0;
    }
    void function1(void){
        char str[]={"0123456789ABCDEF"};
        printf("%c",str[15]);
        printf("%c",str[8]);
        printf("%c",str[1]);
    }
    
    void packageForT2H(int a){
        printf("输入的十进制数字是%d,它的16进制形式是:
    ",a);
        tenToHex(a);
        printf("
    ");
        
    }
    
    void tenToHex(int a){
        char str[]={"0123456789ABCDEF"};
        int rest=a%16;
        if(a/16>16)
        {
            tenToHex(a/16);
        }
        else{
            printf("%c",str[a/16]);
        }
        printf("%c",str[a%16]);
        
    }

    运行结果:

     

  • 相关阅读:
    浏览器同源政策及其规避方法---转阮大神
    js跨域详解
    js中top、self、parent
    杂记
    DOM 踩踩踩
    java idea 连接数据库
    数据库mySQL常用命令
    用迭代实现80人围成一圈逢3取出
    如何把通过类建立的对象存入数组中.
    面向对象编程
  • 原文地址:https://www.cnblogs.com/letben/p/5210521.html
Copyright © 2020-2023  润新知