问题 单项选择题

有以下程序: main() {int a=5,b=4,c=3,d=2; if(a>b>c) cout<<d<<end1; else if((c-1)=d)==1) tout<<d+1<<endl; else cout<<d+2<<endl; }

A.2

B.3

C.4

D.编译时有错,无结果

答案

参考答案:B

解析: 本题考查逻辑表达式的结合特性,即左结合性。对于表达式a>b>c,首先判断a>b为真,结果为1,然后判断1>c,为假,故转去判断c-1):d是否成立,成立,结果为1,再判断1=1,结果为真,因此,执行d+1,答案为B。

多项选择题
单项选择题