[单选题]设static int a;执行表达式(a==1)&&(a=-1)&&(a=2)后,a的值是()

A

-1

B

0

C

1

D

2

正确答案:B
题目解析

a是静态变量,因为没有对a进行初始化,编译时a赋初值0,则表达式a==1为假。“&&"逻辑与运算,如果第一个表达式被判定为“假”,则运算结果与第二个表达式的值无关,结果肯定为“假”,C语言规定此时不再对第二个表达式进行判定或计算。

扫描二维码
免费搜题、免费刷题、免费查看解析