当前位置: > C#中双精度数10.00-9.90=0.09999999999999996?...
题目
C#中双精度数10.00-9.90=0.09999999999999996?
double x=10.00,y=9.90;
double z = x - y;
如上,我知道这是由于精度位数产生的误差但还是不太了解产生的过程,有什么方法可以避免出现这种情况?(不只针对这个例子,一般情况下该如何避免)

提问时间:2020-10-23

答案
你可以使用decimal试一下 10.00-9.90=0.10 或者看你需要小数点后面几位 则取几位.string strZ=z.ToString("0.0000"); //这样是取小数点后四位 第五位是以四舍五入
举一反三
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
1,人们染上烟瘾,最终因吸烟使自己丧命.
版权所有 CopyRight © 2012-2019 超级试练试题库 All Rights Reserved.