有以下程序 #include main() { int a=5,b=1,t; t=(a

admin2020-11-23  26

问题 有以下程序
#include
main()
{
int a=5,b=1,t;
t=(a<<2)|b;
printf("%d\n",t);
}
程序运行后的输出结果是( )。

选项 A、21
B、11
C、6
D、1

答案A

解析 语句"t=(a<<2)|b; "先计算表达式"(a<<2)",a的二进制数值为00000101,所以左移2位之后结果为00010100,对应十进制值为20,之后计算"00010100|b",b对应的二进制数值为00000001,或运算的结果为00010101,对应十进制值为21,所以答案选A。
转载请注明原文地址:https://kaotiyun.com/show/8g3p777K
0

最新回复(0)