(double)(5/2)=2.0和(double)5/2=2.5 .试问这两者怎么算的,得到的结果不同?
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/31 18:25:03
![(double)(5/2)=2.0和(double)5/2=2.5 .试问这两者怎么算的,得到的结果不同?](/uploads/image/z/13495360-40-0.jpg?t=%EF%BC%88double%29%285%2F2%29%3D2.0%E5%92%8C%28double%295%2F2%3D2.5+.%E8%AF%95%E9%97%AE%E8%BF%99%E4%B8%A4%E8%80%85%E6%80%8E%E4%B9%88%E7%AE%97%E7%9A%84%2C%E5%BE%97%E5%88%B0%E7%9A%84%E7%BB%93%E6%9E%9C%E4%B8%8D%E5%90%8C%3F)
xJ@_cKR,z
l
E1(BRBHLevv'_ IY2z=ԔܻFC @+oGrt.!/JO"/3RGFB#]LcEfް 1y$4ɽXn&^PxaiQإxԔ!O\QBN&8J"sh#-1m9O&j5v \l=E&op@+hu[[P;5K̬{M
(double)(5/2)=2.0和(double)5/2=2.5 .试问这两者怎么算的,得到的结果不同?
(double)(5/2)=2.0和(double)5/2=2.5 .试问这两者怎么算的,得到的结果不同?
(double)(5/2)=2.0和(double)5/2=2.5 .试问这两者怎么算的,得到的结果不同?
第一个先计算5/2,这是两个整数运算,结果是整数,舍去尾数为2,再用(double)将整数转化为双精度,即2.0
第二个先计算(double)5,将整数的5转化为双精度的5.0,再作除法运算,这时候系统会将2自动转位双精度2.0计算,结果为2.5