zoukankan      html  css  js  c++  java
  • 进制之位运算

    十进制转换成二进制   

    //十进制转2进制
    #include<iostream>
    using namespace std;
    int inttoBin(int num)
    {
        int i,tag=0;
        unsigned int mask = 0x80000000 ;//1000 0000 0000 0000  
        for(i = 0; i < 32; i++)// 32次 
        {
            if((num & mask) == mask)
            {
                if(!tag) tag=1;
                printf("1");
            }
            
            else if(tag)
            {
                printf("0");
            }
            num = num << 1;
            
            /*if((i + 1) % 4 ==0) //每四个空位 
            {
                printf(" ");
            }*/
        }
        
        printf("
    ");
    }
    int main()
    {
        inttoBin(11);
    } 
    View Code

    十、八进制转换成十六进制  注意代码注释

    //8进制转换成16进制 八进制表示0 
    #include<iostream>
    #include<cstring>
    using namespace std;
    int inttoox(unsigned int num)
    {
        int i;
        unsigned int temp = num;
        char s[11];
        memset(s,0,sizeof(char));
        char tmp='a';
        s[0] = '0';
        s[1] = 'x';
        s[10] = '';
        unsigned int mask = 0x0000000f;
        for(i = 2; i < 10; i++)
        {
            if((temp & mask) >=10) //不要忘了等于号 
            {
                s[11-i] = (temp & mask) - 10 + 'a'; 
                if(s[11-i]=='a') cout<<s[11-i]<<endl;
            }
            else
            {
                s[11-i] = (temp & mask) + '0';
            }
            
            temp = temp >> 4;
        }
        
        printf("result = %s
    ",s);
        //printf("result = %s
    ",s);
    }
    int main()
    {
        int x=10;//十进制 
        for(int x=10;x<=16;x++)
        inttoox(x);
        inttoox(012);//八进制 
    } 
    View Code
  • 相关阅读:
    第四周作业
    第三周作业
    2019学期第八周编程总结
    2019学期第七周编程总结
    2019学期第六周编程总结 .
    2019学期第五周编程总结 .
    2019学期第四周编程总结 .
    2019学期第四周编程总结
    2019学期第三周编程总结
    2019年春季学期第二周作业
  • 原文地址:https://www.cnblogs.com/helloworld2019/p/10396555.html
Copyright © 2011-2022 走看看