若已定义:int a=25,b=14,c=19;执行以下三目运算符(?:)所构成的语句: a<=25&&b--<=2&&c? printf("***a=%d,b=%d,c=%d\n",a,b,c):printf("###a=%d,b=%d, c=%d

admin2009-01-15  29

问题 若已定义:int a=25,b=14,c=19;执行以下三目运算符(?:)所构成的语句:    a<=25&&b--<=2&&c? printf("***a=%d,b=%d,c=%d\n",a,b,c):printf("###a=%d,b=%d, c=%d\n",a,b,c);    输出结果是(    )。

选项 A、***a=25,b=13,c=19
B、***a=26,b=14,c=19
C、###a=25,b=13,c=19
D、###a=26,b=14,c=19

答案4

解析 此题综合考查多种运算符的使用:首先计算表达式a<=25&&b--<=2&&c的值,很容易看出b--<=2的值为假,因此表达式为假;根据三目运算的特点,由于表达式为假,所以应该执行printf("###a=%d,b=%d,c=%d\n",a,b,c);这时a的值依然为25,b的值经过b--运算后变为13,而c的值仍为19。
转载请注明原文地址:https://kaotiyun.com/show/0nXp777K
0

最新回复(0)