问题 单项选择题

有以下程序 main( ) { int a=5,b=4,c=3,d=2; if(a>b>c) cout<<d<<endl; else if((c-1>=d)==1) cout<<d+1<<endl; else cout<<d+2<<endl; } 执行后输出结果是

A.2

B.3

C.4

D.编译时有错,无结果

答案

参考答案:B

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

解答题
单项选择题 案例分析题