long相除取整
long a = 1;
long b = 199999999999;
MessageBox.Show((a / b).ToString());
在C#中得到结果是0,用计算器得到的结果是5.00000000000025500000......
为何结果不一样?
另外对于long形数据应该如何正确取整?
------解决方案--------------------计算器溢出了,被除数 < 除数, 结果肯定 < 1
------解决方案--------------------用long的话,只有整数结果。
改为double就好了:
double a = 1;
------解决方案--------------------如果要求数据准确,请使用decimal
------解决方案--------------------用long/long或者int/int的话,得出的结果是数学值的舍尾取整,需要将一个转为float或者double