十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
'自定义一个函数:功能是给小数直接进一位
成都创新互联公司是一家专业提供施秉企业网站建设,专注与成都网站制作、成都网站建设、H5高端网站建设、小程序制作等业务。10年已为施秉众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。
'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
用这个函数把
Math.Round 方法 (Decimal, Int32)
将小数值舍入到指定精度。
命名空间: System
程序集: mscorlib(在 mscorlib.dll 中)
语法
Visual Basic(用法)
Dim d As Decimal
Dim decimals As Integer
Dim returnValue As Decimal
returnValue = Math.Round(d, decimals)
参数
d
类型:System.Decimal
要舍入的小数。
decimals
类型:System.Int32
返回值中的小数位数(精度)。
返回值
类型:System.Decimal
精度等于 decimals,最接近 d 的数字。
Math.Round(3.4666666, 4) 结果是 3.4667.
保留两位小数的一般方法是四舍五入法。
保留两位小数,看千分位。是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
Option Explicit On
Option Strict On
Imports System
Module Program
Sub Main()
Dim s As String
Dim strs As String()
Dim fz,fm,n,m,t As Long
Console.Write("请输入一个小数:")
s=Console.ReadLine().Trim()
strs=s.Split("."C)
fz=CLng(strs(0))
fm=CLng(Math.Pow(10,strs(1).Length))
fz=fz*fm+CLng(strs(1))
n=fz
m=fm
While n Mod m0
t=n Mod m
n=m
m=t
End While
fz\=m
fm\=m
Console.WriteLine("{0}={1}/{2}",s,fz,fm)
Console.Write("Press any key to continue . . . ")
Console.ReadKey(True)
End Sub
End Module
1.基本数据类型
基本数据类型是由系统定义的数据类型,包括数值数据类型、字节型、逻辑型、日期型、字符型、字符串类型和对象类型。
(1)数值(Numeric)数据类型
数值数据类型分别是:Integer、Long、Single、Double和Decimal,它们的表数范围、所占字节数如表3-1所列。
表3-1 VB .NET的数值数据类型
类型 数值范围 字节数
Integer -2147483648 ~ 2147483647 4
Long 9223372036854775808 ~ 9223372036854775807 8
Short -32768 ~ 32767 2
Single -3.402823E38 ~-1.401298E-451.041298E-45 ~ 3.402823E38 4
Double -1.7976313486231E308 ~ 4.94065645841247E-324
4.94065645841247E-324 ~ 1.79769313486231E308 8
Decimal -7922816251426433759354 ~ 79228162514264337593543950335
绝对值最小的非0数为:+/-0.000000000000000000000000001 12
(2)字节(Byte)数据类型
字节类型用以存储二进制数据,占1字节,其数值范围在0~255的整数,是一个无符号的数据类型。在进行ANSI与Unicode格式转换时,若数据是用Byte格式存储的,就可以保留其原值;若数据是用String格式存储的则可能会遭到破坏。在读文件、写文件、调用DIL、调用对象的方法和属性时,VB .NET都会自动在ANSI和Unicode之间进行转换。注意,除了一元减号外,所有对整数起作用的运算符都可用于Byte类型的数据。
(3)逻辑(Boolean)数据类型
逻辑类型数据占2个字节,主要用来存放逻辑判断的结果,取值为逻辑值,即True(真)或False(假)。当将其他数据类型转换为逻辑数据时,非0转换为True,0转换为False。
(4)日期(Date)数据类型
Date类型用来保存日期和时间数据,占8字节,取值范围为1-1-0001 0:00:00~12-31-9999 23:59:59的日期时间,即日期范围为公元1年1月1日~9999年12月31日,时间范围为0:00:00~23:59:59。Date数据要求在日期时间值前后加上“#”,日期时间值的格式为m-d-yyyy hh : mm : ss(月-日-年时:分:秒)。例如:#12-3-2003 10:20:18#。
(5)字符(Char)型
字符型数据占2字节,取值范围0~65535,代表一个Unicode字符。Char数据类型与数值类型之间不允许隐式转换,但可使用系统的Asc()或AscW()将Char数据显示转换为数值数据。
(6)字符串(String)数据类型
String类型用于保存字符串数据,一个字符占1字节,一个汉字占2字节,字符串最大长度可达20亿(231)个Unicode字符。字符串前后要加上" "。例如:"Good morning !"、"程序"。
(7)对象(Object)数据类型
Object类型用来存储应用程序中的对象,可存放任何类型的数据,占4字节。
2.自定义数据类型
用户自定义类型在Visual Basic.NET中称为“结构”(Structure),包含一个或多个不同种类的数据类型,视自定义类型的成员来决定存放的数据,关键字为System.ValueType。用户自定义类型数据占用的内存空间是其包含的所有数据类型所占用内存空间的总和。