美文网首页十天学会C语言程序员
C语言day06-06位运算符练习1

C语言day06-06位运算符练习1

作者: liyuhong165 | 来源:发表于2016-05-01 00:12 被阅读72次

pragma mark 位运算符练习1

pragma mark 概念

pragma mark 代码

#include <stdio.h>
void printfBinay(int value);
int main()
{
#pragma mark 要求定义一个函数,传入一个整数,输出该整数的二进制
    /*
     要求定义一个函数,传入一个整数,输出该整数的二进制
     %i %o %x
     
                                           0000 0000 0000 0000 0000 0000 0000 1001 // 向右移31位
    &0000 0000 0000 0000 0000 0000 0000 0001
     
     // 1.让9的二进制向右移31,就可以获取9的最高位的二进制,然后让9的二进制的最高位和1相与(&),那么久可以获得9的最高位
     // 2.让9的二进制向右移30,就可以获得9的二进制的第二位
     // 3.以此类推,直到0位置
     
     技巧
     1.任何数与1相&都是那个数
     2.利用位移取出每一位
     */
    int num = 9;
    
    printfBinay(9);
    
    return 0;
}
void printfBinay(int value)
{
#pragma while循环
//    // 1.定义变量需要向右移动的位数
//    int offset = 31;
//    // 2.通过循环取出每一位
//    while (offset >=0) { // 循环的次数大于0 继续向右移
//        //
//        int result = (value >> offset) & 1 ;    //  取出最高位
//        printf("%i",result);
//        // 3.每次取出一位数就让控制右移的变量-1
//        offset --;
//        if ((offset+1) % 4 == 0) {
//            //打一个空格
//            printf(" ");
//        }
//
//    }
//    printf("\n");
    
#pragma mark for循环
    for (int i = 31; i>=0; i--) {
        int result = (value >> i) & 1 ;    //  取出最高位
        printf("%i",result);
       
        if (i % 4 == 0) {
            //打一个空格
            printf(" ");
        }
    
    }
    printf("\n");

}

相关文章

  • C语言day06-06位运算符练习1

    pragma mark 位运算符练习1 pragma mark 概念 pragma mark 代码

  • 16_位运算符分析

    关键词: C语言中的位运算符、 左移和右移注意点、位运算防错准则、 位运算符和逻辑运算符的区别 1. C语言中的位...

  • 【初识C语言】C语言中的运算符

    C语言中的运算符 1运算符和表达式 C语言运算符是说明特定操作的符号,它是构造C语言表达式的工具。C语言的运算异常...

  • 「C语言入门到精通」C语言运算符 第02课

    【C语言入门到精通】C语言运算符 第02课 主要内容: 1.赋值运算符,复合算术运算符 2.算术运算符 3.关系运...

  • 嵌入式C语言的位运算

    想必大家都了解&&(且运算符),||(或运算符),在C语言的位运算中 ,位或运算|,位与运算&,异或^,取反~。等...

  • iOS 枚举|结构体

    iOS 运算符[/p/1eaa9e021fac] 左移<<右移>>按位或︳按位并&按位取反~按位异或^ C语言用法...

  • C语言中关于逗号运算符的理解

    在C语言中运算符有很多,包括算数运算符、关系运算符、赋值运算符、位运算符、逻辑运算符、三目运算符、sizeof运算...

  • 关于逗号运算符的理解

    在C语言中运算符有很多,包括算数运算符、关系运算符、赋值运算符、位运算符、逻辑运算符、三目运算符、sizeof运算...

  • C语言:按位运算

    C语言:按位运算 C有这些按位运算的运算符& 按位的与| 按位的或~ 按位取反^ 按位的异或<< ...

  • C语言基础教程之运算符

    C语言内置运算符丰富到令人头皮发麻,C语言基础教程之运算符篇 C语言运算符 运算符是告诉编译器执行特定数学或逻辑函...

网友评论

    本文标题:C语言day06-06位运算符练习1

    本文链接:https://www.haomeiwen.com/subject/yfskrttx.html