
正文
vb.net保留1位小数,net保留两位小数
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
VB 向上保留一位小数
VB有Round()函数,但是是四舍五入,你的这个需要编写一个过程或函数:
Dim AA As String '模块级变量
Private Sub Command1_Click()
Dim XX As Single, YY As Single '过程级变量
XX = Val(Text1.Text)
If AA = "整数" Then
If XX / 1 - XX \ 1 = 0 Then '判断小数部分是否小于0.5
YY = Round(XX, 0) + 1
ElseIf XX / 1 - XX \ 1 0 Then '判断小数部分是否大于0.5
YY = Round(XX, 0)
End If
ElseIf AA = "小数" Then
If XX / 1 - XX \ 1 = 0 Then '判断小数部分是否小于0.5
YY = Round(XX, 1) + 0.1
ElseIf XX / 1 - XX \ 1 0 Then '判断小数部分是否大于0.5
YY = Round(XX, 1)
End If
End If
Text2.Text = YY
End Sub
Private Sub Form_Load()
Option1(0).Value = True
End Sub
Private Sub Option1_Click(Index As Integer)
If Option1(0).Value = True Then
AA = "整数"
Else
AA = "小数"
End If
End Sub
相关问答
Q1: VB.net,小数点直接进一位的函数?
'自定义一个函数:功能是给小数直接进一位
'num 要操作的小数
'n 保留几位小数,
Function getNumber(num As Double, n As Integer) As Double
Dim a As Double
a = Int(num * (10 ^ n)) / (10 ^ n)
If a = num Then
getNumber = a
Else
getNumber = a + 1 / (10 ^ n)
End If
End Function
-------------------------
调用一下:
Private Sub Command1_Click()
MsgBox (getNumber(3.1415926, 2))
End Sub
得到3.15
Q2: VB.NET 怎么样保留后面的小数位
保留两位小数的一般方法是四舍五入法。
保留两位小数,看千分位。是4或比4小舍去;是5或比5大舍去以后向前一位进1。
如:3.425保留两位小数就是3.43
3.421保留两位小数就是3.42
又如: 3.4263保留两位小数就是3.43
3.4233保留两位小数就是3.42
再如:3.4保留两位小数就是3.40





