有定义语句:“int a=1,b=2,c=3,x;”,则以下选项中各程序段执行后,x的值不为3的是( )。

admin2009-01-15  32

问题 有定义语句:“int a=1,b=2,c=3,x;”,则以下选项中各程序段执行后,x的值不为3的是(  )。

选项 A、if(c<a)x=1;        else if (b<a) x=2;    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;

答案4

解析 选项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。所以,4个选项中选项C符合题意。
转载请注明原文地址:https://kaotiyun.com/show/wFXp777K
0

最新回复(0)