设a,b,c都是int的变量,且a=3,b=4,c=5,则下面的表达式中值为0的是( )A.'a' &amp;&amp; 'b'B.a<=b

题目

设a,b,c都是int的变量,且a=3,b=4,c=5,则下面的表达式中值为0的是( )

A.'a' && 'b'

B.a<=b

C.a || b+c&&b-c

D.!((a<b)&&!c||1)

参考答案和解析
正确答案:D
解析:该题主要考查运算符的优先级,另外,在C++语言中任何非零值都被看做true,值为1。前三个表达式的值都是0。
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

设x、Y和z是int型变量,且x=4,y=6,z=8,则下列表达式中值为0的是( )。 A.xYB.x<=YSX

设x、Y和z是int型变量,且x=4,y=6,z=8,则下列表达式中值为0的是( )。

A.xY

B.x<=Y

C.x‖y+zy-z

D.!((x<y)!z‖1)


正确答案:D
本题考查逻辑运算符的使用。当“”的两个运算对象都是逻辑l时,表达式返回值才是1;“‖”的两个运算对象至少有一个是逻辑1时,表达式返回值也是l,x<y为1,!z为0,10为1,0‖为1,因此,!l为0。

第2题:

设x,y和z都是int型变量,且x=3,y=4,z=5,则下面表达式中,值为0的表达式是

A.x&&y

B.x<=y

C.x||++y&&y-z

D.!(x<y&&!z||1)


正确答案:D
解析:该题考查逻辑与“&&”和逻辑或“||”以及逻辑非“!”符号的用法。选项A)即3&&4为真,选项B)即3=4为真,选项C)是一个逻辑或与逻辑与的混合运算,只要执行了逻辑或左半部分,程序将直接停止执行逻辑或右半部分程序,因为x的值为真,此时选项C)变为1&&-1为真。选项D)不用计算,括号内逻辑或右边的值为1,因而括号内的值为1,再进行逻辑非运算得0。

第3题:

设x,y和z都是int型变量,且x=3,y=4,z=5,则下面表达式中,值为0的表达式是 A.x&&

设x,y和z都是int型变量,且x=3,y=4,z=5,则下面表达式中,值为0的表达式是

A.x&&y

B.x<=y

C.x||++y&&y-z

D.!(x


正确答案:D

第4题:

设x,y和z都是血型变量,且x=3,y=4,z=5,则下面表达式中,值为0的表达式是

A.x&&y

B.x<=y

C.x‖++y&&y-z

D.!(x<y&&!z‖1)


正确答案:D
解析: 该题考查逻辑与“&&”和逻辑或“‖”以及逻辑非“!”符号的用法。选项A)即3&&4为真;选项B)即3=4为真;选项C)是一个逻辑或与逻辑与的混合运算,只要执行了逻辑或左半部分,程序将直接停止执行逻辑或右半部分程序,因为x的值为真;此时选项C)变为1&&-1为真。选项D)不用计算,括号内逻辑或右边的值为1,因而括号内的值为1,再进行逻辑非运算得0。

第5题:

设x,y和z都是int型变量,且x=3,y=4,z=5,则下列表达式中,值为0的表达式是A.x&&y B.x<=y C. x||++y&&y-z D.!(x<y&&!z||1)


正确答案:D
在本题中,定义了三个整型变量x,y,z,并分别赋初值为3,4,5。然后求结果为0的表达式。
选项A中的表达式x&&y,由于在C语言中,有非0即真的定义,即变量x,y的值都不为0,因此表达式的结果不为0。
选项B中的表达式x<=y,由于变量y的值比变量x的值大,因此,该表达式的结果也不为0。
选项C中的表达式x||++y&&y-z,由于运算符&&的优先级较||高,那么本表达式等价于x||(++y&&y-z),在表达式中,首先运算++y,将变量y的值变为5,然后执行y-z,得到结果为0,因此,(++y&&y-z)的运算结果为0,但x为非0值,最终的结果不为0。
选项D中的表达式!(x<y&&!z||1),首先运算!z,结果为0,由此可知x<y&&!z的结果为0,但由于||运算符后有一个1,因此,(x<y&&!z||1)部分的结果为1,而再进行逻辑非运算结果为0。

第6题:

设a、b、c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是______。

A.'a'&&'b',

B.a<=b

C.a||b+c&&b-c

D.!((a<<b)&&!c||1)


正确答案:D

第7题:

设a、b和c都是int型变量,且a=3、b=4、c=5,则下面的表达式中,值为0的表达式是______。

A.'a'&&'b'

B.a<=b

C.a||+c&&b-c

D.!((a<b) &&!c||1)


正确答案:D
解析:选项A:'a'&&'b'是字符a与b的相与,不为0:选项B:a=b,由题中变量赋值可知,结果为1。选项C:a||+c&&b-c,结果为1;选项D:!((aB) &&!c||1),运算结果为0。

第8题:

设a和b均为int型变量,且a=6、b=11、c=3,则能使值为3的表达式是( )。

A)b%(c%4)

B)b%(c-a%5)

C)b%a-a%5

D)(b%a)-(a%4)


正确答案:D

第9题:

a、b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是 ( )

A.'a'&&'b

B.a<=b

C.ab+c&&b-c

D.!((a<b)&&!c1)


正确答案:D

第10题:

设有定义: int a=2,b=3,c=4;, 则以下选项中值为0的表达式是A.(!a==1)&&(!b==0)B.(a

设有定义: int a=2,b=3,c=4;, 则以下选项中值为0的表达式是

A.(!a==1)&&(!b==0)

B.(a<b)&& !c‖1

C.a && b

D.all(b+b)&&(c-a)


正确答案:A
解析:计算逻辑表达式要注意的问题有三个:一、3个逻辑表达式的优先级从高到低依次是!(逻辑非)、&&(逻辑与)、‖(逻辑或);二、运算符&&或‖的左边运算分量分别为“假”或“真”的时候已经能够得出整个表达式的值,故右边运算分量将被“短路”,即忽略右边的表达式.三、逻辑值能够自动转换为整数值:“真”=1、“假’=0;整数值也能自动转换为逻辑值:0=“假”,非0=“真”。选项A中(!a=1)&&(!b==0)→(12==1)&&(!b==0)→(0==1)&&(!b==0)→0&&(!b==0)→0(&&右边表达式(!b==0)被“短路”);选项B中(ab)&&!c‖1→(23)&&!4‖1→1&&0‖→0‖→1;选项C中a&&b→2&&3→1选项Da‖(b+b)&&(c-a)→2‖(b+b)&&(c,a)→1(‖右边表达式(b+b)&&(c-a)被“短路”)。所以本题选A。

更多相关问题