有以下程序: main() { unsigned char a,b; a=4 | 3; b=4 & 3; printf("%d %d\n",a,b); } 执行后输出结果是( )。

admin2010-01-10  24

问题 有以下程序:    main()    {  unsigned char a,b;    a=4  |  3;    b=4  &  3;    printf("%d %d\n",a,b);    }    执行后输出结果是(  )。

选项 A、7  0
B、0  7
C、1  1
D、43  0

答案1

解析 在位与运算符&中参加运算的两位都为1时,其结果为1,否则结果为0。所以本题中的4|3:01002|00112=01112=7。位与运算符|中参加运算的两位只要有一个为1,则结果为1,只有当相应的两位都为0结果才为0。所以本题中的4&3=01002&00112 =00002=0。最后输出a和b的值为7和0。故4个选项中选项A符合题意。
转载请注明原文地址:https://kaotiyun.com/show/9HWp777K
0

最新回复(0)