参考答案和解析
正确答案: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)功能相同。
更多“ 以下程序段中与语句k=ab?(bc?1:0):0;功能等价的是( )。 A.B.C.D.A.0B.9C.6D.8 ”相关问题
  • 第1题:

    以下程序段中,与语句: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)功能相同。

  • 第2题:

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

    A.if((a>b)&&(b>c)) k=1; else k=0;

    B.f((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
    解析:本题是先比较a,b,如果a>b成立则执行(b>c?1:0),如果b>c成立则结果为1,否则为0。也就是说只有a>b与b>c同时成立时k值才能为1。选项A)正确。选项B)是a>b与b>c之一成立时k=1;选项C)是b=c时k=1;选项D)与B)类似。所以B)、C)、D)均不对。

  • 第3题:

    以下程序段中与语句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

    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;


    101

  • 第4题:

    以下程序段中,与语句“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(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
    本题考查了双重三目运算符的用法。例如:表达式a>b?c:d可以看成,当a>b时取C的值,否则取d的值。在本题中k=a>b?(b>c?1:0):0可以看做:当b>c时为真,则k=a>b?1:0。当b<c时则k=a>b?0:0。也就是说,当a>b并且b>C时,k=1,否则k=0。所以A选项符合题意。

  • 第5题:

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

    A.if(a>b) &&(b>c) )k=1;else k=();

    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
    解析:“a>b?(b>c?1:0):0”的求解顺序是:先判断a>b是否为真,如果为真,则执行b>c?1:0,如果b>c为真,则(b>c?1:0)的值为1,从而整个表达式返回1,否则整个表达式返回0;如果a=b,则表达式返回0。因此功能等价的语句应为if((a>B)&&(b>C))k=1;elsek=0;。