(float)(a+b)⼀2+(int)x%(int)y 设a=2,b=3,x=3.5,y=2.5怎么做?

2024年11月15日 20:42
有3个网友回答
网友(1):

(float) (int) 都是强制类型转换
(float)(a+b)/2+(int)x%(int)y

(a+b)/2强制转换成float型数据为2.500000
(int)x%(int)y 为3%2 结果为1
所以最后的结果是2.500000+1 自动类型转换后
等于3.500000

网友(2):

(a+b)/2,因为默认的情况下,这个表达式是按照a,b的类型得出结果,如果定义的a,b是整形的,那么表达式的值为2,float以后也是2.(int)x值为3,(int)y为2,所以结果为3.在vc6.0下运行的结果也是3

网友(3):

float(a+b)/2=2.5
后面的那个你算的对是1
所以结果是3.5