A-A+

若有定义:int a=4 b=5;float x=3.4 y=2.1; 则下列表达式的值为(

2022-08-06 05:50:46 问答库 阅读 176 次

问题详情

若有定义:int a=4,b=5;float x=3.4,y=2.1;,则下列表达式的值为()。
(float)(a+b) /2+(int)x%(int)y
A.5.5
B.55
C.5.500000
D.55.00000

参考答案

正确答案:C
解析:在计算(float)(a+b/2时,由于通过强制类型转换将(a+b转换成了foat型,所以应先将2转换成float型,再进行计算,得4.500000。
在计算(int)x%(int)y时,先将x和y通过强制类型转换成int型,再进行求余运算,得1。又因为4.500000是float型,所以将1和它相加时,先将1换成float型,再计算,得到5.500000。
[知识扩展] 类型转换的一般规则是:低级类型服从高级类型,并进行相应的转换。数据类型的级别由低到高的排序表示为:char→int→unsigned→long→float→double。

考点:表达式,定义