有以下程序 #include main() { char c=’A’; int x=36, b; b= (x>>2) && ( c

admin2015-07-28  37

问题 有以下程序
#include
main()
{ char c=’A’;
int x=36, b;
b= (x>>2) && ( c<’a’ );
printf("%d\n", b );
}
程序运行后的输出结果是( )。

选项 A、1
B、0
C、2
D、4

答案A

解析 逻辑与"&&"的运算规则是两个运算对象均为真(非零)时,该逻辑表达式的值才为真(1),表达式"x>>2"中x的二进制数值为00100100,运算结果为1001,对应十进制数值为9,表达式"c< ?a? "的值为1,而9&&1的结果为1,答案选A。
转载请注明原文地址:https://jikaoti.com/ti/JMn0FFFM
0

最新回复(0)