我把"x+y=%d\n"改成"x+y=%f\n" ,其他没动,为什么结果显示0.000000,而不是7.000000呢?
因为你前面是int x,y;所以x,y都是整型变量,得不出float
不知道x,y是什么数据类型,语法规定低精度的数据类型不能自动转换成高精度的数据类型
算术具有封闭性,整型算法和float相冲突,你把后面的赋值语句x+y改成(float)(x+y),这样值就对了