int i=1,a=2;则表达式4.5+i/a的值为4.500000.为什么?

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/07 16:54:58
int i=1,a=2;则表达式4.5+i/a的值为4.500000.为什么?
xP[NP|jhB˶DMh+>R@hDh@_hw ?s9sfF15C- Z١ %!;VL!rD$H`*Ci-djdإ6'aI17zv0w[T`Vk[$#* @/z"fط[s>_fO:Ӿ0cN8M jЛ̾kWkYpܒYW=Q)ʹ$ EQqE:2x

int i=1,a=2;则表达式4.5+i/a的值为4.500000.为什么?
int i=1,a=2;则表达式4.5+i/a的值为4.500000.为什么?

int i=1,a=2;则表达式4.5+i/a的值为4.500000.为什么?
除法优先级更高, i/a 先计算, i和a都是int型, i/a也为int型, 所以i/a=1/2=0, 再看4.5+0
4.5浮点数, 0整型, 混合型运算 会把int强转为 4.5的类型(float或double,不知道你怎么定义的),
4.5+0 = 4.5+0.0 = 4.500000