有如下语句: k=a>b?(b>c?1:0):0;, 以下程序段中,与上述语句功能相同的是( )。

admin2022-06-24  32

问题 有如下语句:
k=a>b?(b>c?1:0):0;,
以下程序段中,与上述语句功能相同的是(          )。

选项 A、if((a>b)&&(b>c))k=1;else k=0:
B、if((a>b)∣∣(b>c)),k=1;else k=0:
C、if(a<=b)k=0;else if(b<=c)k=1;
D、if(a>b)k=1;else if(b>c)k=1;else k=0;

答案A

解析 三元运算符表达式的形式为:表达式1?表达式2:表达式3,当表达式1的值为真时,结果为表达式2的值;当表达式1的值为假时,结果为表达式3的值。首先判断a、b的关系:①如果a>b,那么就执行“:”前面的语句(b>c?1:0);判断b、c的关系,如果b>c,k=1,否则k=0;②如果a<=b,则k=0。综上所述:当a>b且b>c时,k=1,否则k=0,与A选项语句功能相同。
转载请注明原文地址:https://jikaoti.com/ti/R6d0FFFM
0

最新回复(0)