以下程序的输出结果是( )。 #include<stdio.h> main() {int a=1,b=3; if((++a<0)&&!(b-<=0)) printf("%d,%d\In",a,b); else printf("%d,%d\n",b,a

admin2021-07-09  23

问题 以下程序的输出结果是(    )。
#include<stdio.h>
main()
{int a=1,b=3;
if((++a<0)&&!(b-<=0))
printf("%d,%d\In",a,b);
else
printf("%d,%d\n",b,a);
}

选项 A、2,2
B、1,3
C、3,2
D、3,1

答案C

解析 解答本题的关键在于if语句条件中的表达式。初始时“a=1,b=3”,所以“++a=2>0”,因此“++a<0”为假;因为是进行逻辑与(&&)运算,在&&的一个运算对象为假的前提下不用判断第二个运算对象的真假,就可以直接得出整个表达式的值为逻辑0,所以执行else语句。
转载请注明原文地址:https://kaotiyun.com/show/P4tp777K
0

最新回复(0)