问题
单项选择题
执行下面的程序段 int x=35; char z='A'; int B; B=((x&15)&&(z<'a')); 后,B的值为_______。
A.0
B.1
C.2
D.3
答案
参考答案:B
解析:[评析] 从整个表达式来看是个逻辑表达式,而与运算符“&&”的右边的子表达式中由于z的值为“A”,而A的ASCII码的值小于a的ASCII码值,所以这个子表达式的值为真,即1;在与运算符“&&”的左边的子表达式是个基于位运算的子表达式,将x的值与15做位与运算,表达式值不为零,所以两个子表达式的与值应当为1。