首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C# FLOAT相加异常

2013-08-16 
C# FLOAT相加错误FLOAT Afloat.parse(数据库获取的值)FLOAT Bfloat.parse(数据库获取的值)FLOAT CA+B

C# FLOAT相加错误

FLOAT A=float.parse(数据库获取的值);
FLOAT B=float.parse(数据库获取的值);


FLOAT C=A+B; 

结果完全错误
比如A=0.2377375
    B=0.1698125
那么C应该等于0.40755   但在程序里面C等于0.9后面一大堆小数,请问怎么解决?
[解决办法]
用 Decimal 对象
[解决办法]
你直接试下下面的代码,结果为:0.40755。肯定是你其它什么地方影响了最终结果。

static void Main(string[] args)
        {
            float A = float.Parse("0.2377375");
            float B = float.Parse("0.1698125");

            float C = A + B;
            Console.WriteLine(C);
        }

[解决办法]
float A = float.Parse("0.2377375");
            float B = float.Parse("0.1698125");
            //C=0.40755
            float C = A + B; 

试过了,不存在你说的问题。你确认一下数据库中的值吧。
[解决办法]
有关小数点的计算务必用Decimal类,浮点型会有这样的问题。
[解决办法]
确定下A和B的值。搞不好是其他什么地方影响到了

热点排行