更多“以下程序的功能是进行位运算:main(){unsigned chara,b;a=7∧3;b=~4 & 3;printf("%d%d\n",a,B) ”相关问题
  • 第1题:

    有以下程序 include main() { char a=4; printf("%d/n,a=a

    有以下程序 #include <stdio.h> main() { char a=4; printf("%d/n,a=a<<1); } 程序的运行结果是______。

    A.40

    B.16

    C.8

    D.4


    正确答案:C
    解析:“”是按位左移运算符,左移一位相当于该数乘以2,左移两位相当于该数乘以2的2次方,所以本题相当于将4乘以2,结果为8。

  • 第2题:

    以下程序的功能是进行位运算 main ( ) { unsigned char a, b; a=73; b=~4&3; printf (,%d %d\n" ,a,b); } 程序运行后的输出结果是

    A.4 3

    B.7 3

    C.7 0

    D.4 0


    正确答案:A
    解析:是位异或运算符,其作用是将左右运算分量的相应二进制位进行异或操作。即,相应位同时为。或同时为1则结果相应位为0,否则结果相应位为1。所以a=73=(00000111)2(00000011)2=(00000100)2=4。~是位反运算符,作用是将运算分量的二进制位按位取反。即,原来是0的二进制位变成1,原来是1的变成0。&是位与运算符,其作用是将左右运算分量的相应二进制位进行与操作。即,相应位同时为1时结果相应位为1,否则结果相应位为0。所以b=-4&3=~(00000100)2&(00000011)2(11111011)2&(00000011)2=(00000011)2=3。故应该选择A。

  • 第3题:

    以下程序的功能是进行位运算。 main() { unsigned char a,b; a=7^3;b=-4&3; printf("%d %d\n",a,b); } 程序运行后的输出结果是______.

    A.4 3

    B.7 3

    C.7 0

    D.4 0


    正确答案:A

  • 第4题:

    以下程序的功能是进行位运算:include main( )unsigned char a,b;a =7∧3; b = ~4&3

    以下程序的功能是进行位运算:#include <stdio.h>main( ) unsigned char a,b; a =7∧3; b = ~4&3; printf("% d %d \n" ,a,b);}程序运行后的输出结果是( )。

    A.4 3

    B.7 3

    C.7 0

    D.4 0


    正确答案:A
    解析:“^”是按位异或运算,运算规则是:当两个二进制数对应位上的数相同时,异或结果为0,否则结果为1。73相当于0110011,所以a的值为4。“&”是按位与运算符,其运算规则是:当二进制数的所有对应位上的数值都为1时,结果才为1;“~”是按位取反。~4&3相当于1011&0011=0011,所以b的值为3。

  • 第5题:

    以下程序的输出结果是( )。 main() char a[10]={'1','2','3','4','5','6','7','8','9','\0'),*p; { int i; i=8; p=a+i; printf("%s\n",p-3); }

    A.6

    B.6789

    C.'6'

    D.789


    正确答案:B
    解析:p被定义为指针型变量,被赋值为数组a的首地址加8,即指向元素'9'。将指针向前移3位,输出'6'后的字符串,遇到'\0'结束输出,即6789。