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

admin2019-01-11  44

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

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

答案A

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

相关试题推荐
最新回复(0)