vb 整型变量赋值小数

执行结果为什么会这样?

这个不是简单的“4舍5入法”。
具体叫什么名称的方法,我也不清楚。
不过,可以给你说一下具体规则:
① 如果舍入位小于5,则舍去;如果大于5,则进位。
  这个“舍入位”就是要保留的有效数字之后的那一位。
  比如,你是要传入到整数,就是“0位小数”,即小数点后的第1位。
     如果你要保留4位小数,则它就是指小数点之后的第5位。
  这样说了,你应该明白我说的“舍入位”指哪个数字了吧。
② 如果舍入位是5、并且它的后面没有有效数字(必须非0的才算),则看保留位:
  如果保留位是奇数,则进位;如果是偶数,则舍去。
  就象你的贴子中,因为要舍入到整数,保留位就是个位数,1.5和3.5都进位了,2.5则舍去了。
  假设是保留2位小数:1.255→1.26  1.265→1.26  1.275→1.28  1.285→1.28
③ 如果舍入位是5、并且它后面还有有效数字,则进位。
  比如保留整数:2.5→2    2.50000000000001→3
  这个例子中,虽然2.5的后面有很多个0之后才有一个1,但它也是“有效”的(注意精度问题)。
看了我上面所说的,你应该明白了吧?

但楼主要注意一个问题:在VB6的 Fomat( )函数中,
 如果牵涉到舍入问题,它就是采用简单的“四舍五入”规则进行处理的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-19
没错的,你不妨参考一下GB3101-1993这个《有关量、单位和符号的一般原则》的标准。追问

这个标准和vb有什么关系,为何上面程序不遵循四舍五入原则。

追答

系统必须符合国家标准。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网