有以下程序: #include<stdio.h> main( ) { inta=5,b=1,t; t=(a<<2)∣b; printf("%d\n",t); } 程序运行后的输出结果是( )。

admin2022-06-24  16

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

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

答案A

解析 本题解题方法有如下两种:①位运算最常规的方式是转换为二进制,然后再运算。5的二进制是10l,在<<2后为10100,然后和00001进行或运算后等于10101,其十进制为21;②a<<2即为a*4,结果为20,1相当于保证这个数是奇数,若不是则加1,所以为21。
转载请注明原文地址:https://kaotiyun.com/show/JUkp777K
0

最新回复(0)