计算机二级

经过以下语句定义后,表达式z+=x>y?++x:++y的值是______。int x=1,y=2,z=3;A.2B.3C.6D.5

题目

经过以下语句定义后,表达式z+=x>y?++x:++y的值是______。int x=1,y=2,z=3;

A.2

B.3

C.6

D.5

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若有定义语句:int x=3,y=2,z=1;则表达式x <y?x:y的值是______。


正确答案:2
2

第2题:

设x、y、z、t均为int型变量,则执行以下语句后,t的值是 ( ) x=y=z=l; t=+ + x | | + + y &&am

设x、y、z、t均为int型变量,则执行以下语句后,t的值是 ( ) x=y=z=l; t=+ + x | | + + y && + + z;

A.不定值

B.2

C.1

D.0


正确答案:C

第3题:

已知x,y,z均为整型变量,且值均为1,则执行语句++x||++y&&++z;后,表达式x+y的值为

A.1

B.2

C.3

D.4


正确答案:C

第4题:

若有如下定义: int x=6,y=3,z=2; 则表达式x=y||y<z&&z==z的值是( )。

A.0

B.1

C.4

D.6


正确答案:B
解析:优先级高于==高于&&高于||高于=。首先计算表达式yz的值,yz为假,表达式的值为0,则逻辑表达式yz&&z= =z的值也为0,||左侧y的值为非零值3,所以表达式的值为1,将1赋值给x,赋值表达式的值是1。

第5题:

若x、y、z、m均为int型变量,则执行下面语句后m的值是( )。 m=1; x=2; y=3; m=(m<x) ? m : x; m=(m<y) ? m : y; m=(m<y) ? m : z;

A.1

B.2

C.3

D.4


正确答案:A
解析:?:运算符首先执行?之前的表达式,如果表达式的值为真,则返回?和:之间的表达式的值,否则返回:之后的表达式的值。本题中m比x和y都要小,所以,3个表达式都没有改变m的值,故应该选择A。

第6题:

设有定义语句:double x=2.5, y=4.7;int a=7;那么表达式x+a%3*(int)(x+ y)%2/4的值为【 】。


正确答案:2.5
2.5 解析:本题考核运算符的使用(包括类型、优先级、结合性)。强制类型转换符()将表达式x+y的值转换为int型,那么表达式“a%3*(int) (x+y)%2/4”结果将为整型,计算:7%3*7%2/4的结果为0,而x为double型,所以最后的结果为2.5

第7题:

已有定义:int x=3,y=4,z=5,则表达式!(x+y)+z-1&&y+x/2的值是

A.6

B.0

C.2

D.1


正确答案:D
解析:本题中,&&左边的表达式!(x+y)为!(3+7),结果为假,即为0。再加上z,然后减1,相当于0+5-1。左边等于4,&&右边的表达式y+z/2相当于4+5/2为6,所以整个表达式相当于4&&6为真,即为1。

第8题:

设有如下的变量定义:

double x=4.700000;float y=2.5f;int z=7;

则执行表达式“y+z%3* (int) (x+y)%2/4”后的值是【 】。


正确答案:5
5 解析:根据算术运算的优先级规则,应先执行z%3* (int) (x+y)%2/4之后,再用其值与 y作加法运算。z%3*(int) (x+y)%2/4的执行顺序为先计算z%3,得值为1,再计算x+y并取整,其值为7,用z%3的值1.与(int) (x+y)的值7相乘得7,再计算7%2得值为1,再计算1/4,由于两个整数相除,其结果为商的整数部分,所以1/4的值为0。最后执行y+0,其结果为2.5。

第9题:

已有定义int x=3, y=4, z=5;则表达式“!(x+y)+z-1y+z/2”的值是________。

A.6

B.0

C.2

D.1


正确答案:D

第10题:

设有如下定义: int x=10,y=3,z; 则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是( )。A.1SX

设有如下定义: int x=10,y=3,z; 则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是( )。

A.1

B.0

C.4

D.3


正确答案:D