于System.Math.Round(),我想解释下:
如System.Math.Round(3.3451, 2)
这样的取舍,他就取决于第3个小数位了,只要>=5的 他就输出3.35 否则输出3.34
而System.Math.Round(3.3?5, 2)
这样的取舍,他就取决于这里的? 如果?是偶数 则不进行五入,而?为奇数的时候,他就五入了
如:
Dim a As Double
a = 3.335
MsgBox(System.Math.Round(a, 2))
他输出的却是:3.34,进了一位!
而
Dim a As Double
a = 3.345
MsgBox(System.Math.Round(a, 2))
这时候你会发现输出的是:3.34 所以使用关于System.Math.Round()函数的时候 务必小心.
口诀:
四舍六入五考虑,五后非零就进一,五后皆零看奇偶,五前为偶应舍 去,五前为奇要进一
就上我上面描述的意思...
原文地址:http://blog.csdn.net/xiaoluo5885/archive/2006/08/03/1015457.aspx