三元条件运算符exl ? ex2:ex3,相当于下面( )语句。A.if (ex1) ex2;else ex3;B.if (ex2) ex1;else ex3;C.if (ex2) ex3;else ex2;D.if (ex3) ex2;else ex1;

题目

三元条件运算符exl ? ex2:ex3,相当于下面( )语句。

A.if (ex1) ex2;else ex3;

B.if (ex2) ex1;else ex3;

C.if (ex2) ex3;else ex2;

D.if (ex3) ex2;else ex1;


相似考题
更多“三元条件运算符exl ? ex2:ex3,相当于下面()语句。A.if (ex1) ex2;else ex3;B.if (ex2) ex1;else e ”相关问题
  • 第1题:

    用于实现五条件的转移的是( )。

    A.GoTo语句

    B.If语句

    C.Switch语句

    D.If...else...语句


    正确答案:A

  • 第2题:

    下述关于条件语句的描述中错误的是()。

    A.if语句中只有一个else子句

    B.if语句中可以有多个elseif子句

    C.if语句中if体内不能有switch语句

    D.if语句的if体中可以是循环语句


    正确答案:C

  • 第3题:

    如果A为整数且,|A|>=10,则打印“OK”,否则打印“Error”,表示这个条件的单行格式If语句是( )。

    A.If Int(A)=A And Sqr(A)>=10 Then Print"OK"Else Print "Error"

    B.If Fix(A)=a And Abs(A)>=-10 Then Print"OK"Else Print "Error"

    C.If Int(A)=A And(A>=10,A<-10) Then Print"OK"Else Print "Error"

    D.If Fix(A)=A And A>=10,And A<=-10 Then Print"OK" Else Print "Error"


    正确答案:B
    解析:解答本题考生需了解题中用到的3个函数的作用,Int和Fix都会删除参数的小数部分而返回剩下的整数。Abs函数返回参数的绝对值,其类型和参数相同。而Int和Fix的不同之处在于,如果参数为负数,则Int返回小于或等于参数的第一个负整数,而Fix则会返回大于或等于参数的第一个负整数。

  • 第4题:

    有定义语句: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语句条件中表达式的值“31”为假,然后执行最近的else后面的语句,该else后面又为if-else语句,在这个if-else语句中首先判断该if语句条件中表达式的值“21”为假,程序执行其最近的else后面的语句,将3赋值给x。
      选项B中首先判断if语句条件中表达式的值“13”为真,然后执行最近的else后面的语句“x=3”,后面的else不再执行,最后x的值为3。
      选项C中,首先执行第一条if语句,由于“13”为真,执行此if后面的语句“x=3”,接着执行第二条if语句,由于“12”为真,执行此if后面的语句“x=2”,接着执行第三条 if语句,由于“11为假,后面的语句不执行,所以最后的x值为2不为3。
      选项D中;首先执行第一条if语句,由于“ab”为真,执行此if后面的语句“x=b”;接着执行第二条if语句,由于“bc”,为真,执行此if后面的语句“x=c”,接着执行第三条if语句,由于“ca”为假,后面的语句不执行,所以最后的x值为c即为3。

  • 第5题:

    以下程序段中与语句k=a>b?(b>c?1:0):0;功能等价的是( )。

    A.if((a>B) &&(b:>C) )k=l; else k=0;

    B.if(a>B) ‖(b>C) k=1; else k=0;

    C.if(a<=B) k=0; else if(b<=e) k=1;

    D.if(a>B) k=1; else if(b>C) k=1; else k=0;


    正确答案:A
    解析:分析题目中给出的表达式可知,如果a>b和b>c同时成立,k=1,否则k=0。所以,4个选项中选项A符合题意。

  • 第6题:

    如果x为整数且|x|>=100,则打印“OK”,否则打印“Error”,表示这个条件的单行格式 If语句是

    A.If Int((x)=x And Sqr(x)>=100 Then Print "OK" Else Print "Error"

    B.If Fix(x)=x And Abs(x)>=100 Then Print"OK"Else Print"Error"

    C.If Int(x)=x And (x>=100,x<=-100)Then Print"OK"Else Print"Error"

    D.If Fix(x)=x And x>=100 And x<=-100 Then Print "OK" Else Print "Error"


    正确答案:B
    解析:绝对值函数为Abs,而取整函数为Fix或者Int。本题中,选项A使用了平方根函数;选项C书写错误;选项D的条件语句错误,x>=100Andx=-100这个条件永远不成立,应该为(x>=100Orx=-100)。正确答案为选项B。

  • 第7题:

    以下if语句书写正确的是( )

    A.if(x=0;) printf("%f",x); elseprintf("%f",-x);

    B.if(x>0) {x=x+1;printf("%f",x);} else printf("%f",-x);

    C.if(x>0); {x=x+1;printf("%f",x);} else printf("%f",-x);

    D.if(x>0) {x=x+1;printf("%f",x)} else printf("%f",-x);


    正确答案:B

  • 第8题:

    与“y=(x>0?1:x<0?-1:0)”;的功能相同的if 语句是( )。

    A.if(x>0)y=1; else if(x<0)y=1; else y=0;

    B.if(x) if(x>0)y=1; else if(x<0)y=-l; else y=0;

    C.y=-l if(x) if(x>O)y=1; else if(x=-0)y=0; else y=-l;

    D.y=0; if(x>=0) if(x>=0)y=1; else y=-l;


    正确答案:B
    y=(x=)071:x<0?-1:0)中有两个三目运算符,因此按从右到在的顺序运算,可写成y=(x>071:(x<0?-1:0)),故选择8选项。

  • 第9题:

    与y=(x>0? 1:x<0? -1:0);的功能相同的if语句是A.if(x>0)y=1 else if(x<0)y=-1; else y=O;B.i

    与y=(x>0? 1:x<0? -1:0);的功能相同的if语句是

    A.if(x>0)y=1 else if(x<0)y=-1; else y=O;

    B.if(x) if(x>0)y=1; else if(x<0)y=-1;

    C.y=-1; if(x) if(x>0)y=1; else if(x==0)y=0; else y=-1;

    D.y=0; if(x>=0) if(x>0)y=1; else y=-1;


    正确答案:A
    解析:条件运算符要求有三个操作对象,它是c++语言中惟一的一个三目运算符。条件表达式的一般形式为:表达式1?表达式2:表达式3,先求解表达式1,若为非0(真)则求解表达式2,此时表达式2的值就作为整个条件表达式的值。若表达式1的值为0(假),则求解表达式3,表达式3的值就是整个条件表达式的值。本题中用了两次三目运算符。

  • 第10题:

    与y=(x>0?1:x<0?-1:0):的功能相同的if语句是()A.if(x>0)y=1; else if(x<0)y=-1; else y=0; else

    与y=(x>0?1:x<0?-1:0):的功能相同的if语句是( )

    A.if(x>0)y=1; else if(x<0)y=-1; else y=0; else y=0;

    B.if(x) if(x>0)y=1; else if(x<0)y=-1;

    C.y=-1; if(x) if(x>0)y=1; else if(x==0)y=0; else y=-1;

    D.y=0; if(x>=0) if(x>0)y=1; else y=-1:


    正确答案:A

  • 第11题:

    以下选项中,正确的if-else语句是( )

    A.if(x!=0) printf("%d",x) else printf("%d",-x);

    B.if(x!=0) { x=x+y;printf("%d",x);} else printf("%d",-x);

    C.if(x!=0) x=x+y;printf("%d",x); else printf("%d",-x);

    D.if(x!=0) { x=x+y;printf("%d",x)}; else printf("%d",-x);


    正确答案:B

  • 第12题:

    EX2是()路()GE以太网处理板,


    正确答案:2、10

  • 第13题:

    若x和y是程序中的两个整型变量,则下列if语句中正确的是( )。

    A.if(x==0)y=l;else y=2;

    B.if(x==0)theny=1 elsey=2

    C.if(x=0)y=l else y=2;

    D.ifx==0y=1 else y=2;


    正确答案:A
    解析:if…else语句的格式:if(<条件>)<语句1>else<语句2>,注意语句结束要以分号结尾,对照题中选项可知A正确。

  • 第14题:

    if/else语句的第一行,下列选项中哪一个是有效的()。

    A.if(x=2)

    B.if(y<7)

    C.else

    D.if(x==2&&)


    正确答案:B

  • 第15题:

    三元条件运算符ex1?ex2:ex3,相当于下面的( )语句。

    A.if(ex2) ex1; else ex3;

    B.if(ex3) ex2; else ex1;

    C.if(ex1) ex3; else ex2;

    D.if(ex1) ex2; else ex3;


    正确答案:D
    解析:问号表达式的含义是先判断表达式ex1的值,如果该值为真,执行语句ex2,否则执行ex3,因此选择D。

  • 第16题:

    下列if语句非法的是( )

    A.if(a=B) x=1;

    B.if(!3.9)

    C.if('a'&&x==y) y++;

    D.if(x>y) scanf("%f",&y) else scanf("%f",&x);


    正确答案:D

  • 第17题:

    以下程序段中与语句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
    解析:C语言中,条件运算符优先于赋值运算,但低于逻辑运算、关系运算和算术运算。

  • 第18题:

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

    A.if((a>B)&&(b>C))k=1;

    B.if((a>B)II(b>C))k=1; else k=0; else k=0:

    C.if(a<=B)k=0;

    D.if(a>B)k;1; else if(b<=C)k=1; else if(b>C)k=1; else k=0:


    正确答案:A
    解析:表达式k=a>b?(b>c?1:0):0表示:如果(a>b)条件为真,则k取值(b>c?1:0),否则k取值0;当a>b的情况下,如果b>c,则k值为1,否则为0。所以该表达式与选项A)功能相同。

  • 第19题:

    如果A为整数且|A|>=100,则打印“OK”,否则打印“Error”,表示这个条件的单行格式If语句是

    A.If Int(A)=A And Sqr(A)>=100 Then Print "OK" Else Print "Error"

    B.If Fix(A)=A And ABS(A)>=100 Then Print "OK" Else Print "Error"

    C.If Int(A)=A And(A>=100,A<=-100)Then Print "OK: Else Print "Error"

    D.If FiX(A)=AAnd A>=100 And A<=-100 Then Print "OK" E1se Print "Error"


    正确答案:B
    解析:表示一个数为整数,用VB语句表示为Fix(A)=A。表示|A|>=100用 VB语句表示为ABS(A)>=100故选项B正确。

  • 第20题:

    以下叙述中正确的是

    A.if语句只能嵌套一层

    B.if子句和else子句中可以是任意的合法的c语句

    C.不能在else子句中再嵌套if语句

    D.改变if-else语句的缩进格式,会改变程序的执行流程


    正确答案:B
    A选项中,if语句的嵌套没有规定层数;C选项中,可以在else予句中再嵌套if语句;D选项中,改变if—else语句的缩进格式,不会改变程序的执行流程,需要注意if和else的配对问题。因此B选项正确。

  • 第21题:

    以下程序段中,与语句“k—a>b?(b>c?1:O):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(ac)k=1;

    D.if(a>b)k=1; else if(b<=c)k=1; else k=0:


    正确答案:A
    本题考查了双重三目运算符的用法。例如:表达式a>b?c:d可以看成,当a>b时取C的值,否则取d的值。在本题中k=a>b?(b>c?1:0):0可以看做:当b>c时为真,则k=a>b?1:0。当bb?0:0。也就是说,当a>b并且b>C时,k=1,否则k=0。所以A选项符合题意。

  • 第22题:

    以下错误的if语句是( )。

    A.if(x>y)x++;

    B.if(x)x++;

    C.if(x!=y) cout<<x;y++;

    D.if(x<y) x++;cout<<x;else cout<<y;


    正确答案:D
    解析:if和else语句必须紧密相连,应该将x++;coatx;做成复合语句{x++;coutx;}。

  • 第23题:

    下述语句中,_____中的if语句语法是错误的。()A.if(x>y);B.if(x==y)x+=y;C.if(x!=y)seanf("%d",&am

    下述语句中,_____中的if语句语法是错误的。( )

    A.if(x>y);

    B.if(x==y)x+=y;

    C.if(x!=y)seanf("%d",&x)else scanf("%d",&y);

    D.if(x<y){x++;y++;}


    正确答案:C