请问:c语言中d=1/3*3.0;与d=1.0/3*3;d=?有什么区别

时间:2022-09-20 13:46:01

请问:c语言中d=1/33.0;与d=1.0/33;d=?有什么区别

d=1/33.0;

这时d=0,d=(1/3)
3.0,这里1是整形,1/3也是整形,等于0,所以03.0=0

d=1.0/3
3;

这时d=1,d=(1.0/3)3,这里1.0是浮点型,1.0/3也是浮点型,等于0.333333再乘以3等于1.

结果不同 前者是实型,后者是整形。

1/3结果是0,再
3。0还是0

1.0/3结果是0.333333....,再*3结果接近1