有定义语句:inta=1 b=2 c=3 x; 则以下选项中各程序段执行后 x的值不为3的是A.if(c<a) x=1; else
语句,定义,程序
已帮助 人
有定义语句:int a=1,b=2,c=3,x;,则以下选项中各程序段执行后,x的值不为3的是
A.if(c<a) x=1; else if(b<a) x=1; else x=3;
B.if(a<3)x=3; else if(a<2)x=2; else x=1;
C.if(a<3)x=3; if(a<2)x=2; if(a<1)x=1;
D.if(a<b) x=b; if(b<c) x=c; if(c<a) x=a;
-
正确答案:C
解析:选项A首先判断if语句条件中表达式的值“3<1”为假,然后执行最近的else后面的语句,该else后面又为if-else语句,在这个if-else语句中首先判断该if语句条件中表达式的值“2<1”为假,程序执行其最近的else后面的语句,将3赋值给x。
选项B中首先判断if语句条件中表达式的值“1<3”为真,然后执行最近的else后面的语句“x=3”,后面的else不再执行,最后x的值为3。
选项C中,首先执行第一条if语句,由于“1<3”为真,执行此if后面的语句“x=3”,接着执行第二条if语句,由于“1<2”为真,执行此if后面的语句“x=2”,接着执行第三条 if语句,由于“1<1为假,后面的语句不执行,所以最后的x值为2不为3。
选项D中;首先执行第一条if语句,由于“a<b”为真,执行此if后面的语句“x=b”;接着执行第二条if语句,由于“b<c”,为真,执行此if后面的语句“x=c”,接着执行第三条if语句,由于“c<a”为假,后面的语句不执行,所以最后的x值为c即为3。
