当前位置:编程学习 > C#/ASP.NET >>

大侠看看我程序里面double变量为什么会有那么多的小数位

大侠看看我程序里面double变量为什么会有那么多的小数位
这个程序段在单独的一个控制台程序里测试正常,但在这却显示太多的小数位,求解释

,不知道什么原因,大侠看看,以下是断点的,列了几个变量方便查看
见图


其中 alist[p],alist[p-1],alist[p-2] 分别是-96064.9824,-66734.831,-109207.41
实际上,这几个数字都是从一个txt文本读进来的,上面的步骤应该没问题,因为在pp,pp_1,pp_2就对应了alist[p],alist[p-1],alist[p-2]  --------------------编程问答-------------------- xx的值明显不对,lz不会手动修改了吧? --------------------编程问答-------------------- 翻看《计算机组成原理》

或者随便看一本解释浮点数的书。

--------------------编程问答-------------------- 有这个可能性. --------------------编程问答-------------------- 晕,我手动改这个干吗,正是有问题才提出来的啊

引用 1 楼 mabaolin 的回复:
xx的值明显不对,lz不会手动修改了吧?
--------------------编程问答-------------------- double有默认的精度范围。

你可以通过代码控制显示的小数位数的。


double d = 234.12334598267482;
double dd = Math.Round(d, 2, MidpointRounding.AwayFromZero); //参数2是保留小数位2位
Response.Write(dd.ToString());
--------------------编程问答-------------------- 好的,谢谢楼上,现在也就只能通过四舍五入控制了 --------------------编程问答-------------------- 为什么同是浮点数,yy值正常而xx值不正常
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,