第二章 程序设计基础
双击滚屏  关闭窗口

 

2.4 常用内部函数

  2.4.1 数学函数
  2.4.2 字符串函数
  2.4.3 日期 / 时间函数
  2.4.4 类型转换函数

 

2.4.1 数学函数

表 2.3 常用数学函数

函 数

返回值类型

功 能

例 子

结 果

Abs(x)

与 x 相同

绝对值

Abs(4.6)

4.6

Sqr(x)

Double

平方根

Sqr(9)

3

Sin(x)

Double

正弦值

Sin(30*3.14/180)

0.499…

Cos(x)

Double

余弦值

Cos(60*3.14/180)

0.500…

Tan(x)

Double

正切值

Tan(60*3.14/180)

1.729…

Atn(x)

Double

反正切值

4*atn(1)

3.14159…

Exp(x)

Double

E 的幂值

Exp(x)

e x

Log(x)

Double

自然对数值

Log(x)/Log(10)

Log 10 x

Int(x)

Double

不大于 x 的最大整数

Int(99.8) Int(-99.8)

99 -100

Fix(x)

Double

取 x 的整数部分

Fix(99.8) Fix(-99.8)

99 -99

Sgn(x)

Integer

取 x 的符号

Sgn(5) Sgn(0) Sgn(-5)

1 0 -1

Rnd(x)

single

产生 0~1 之间的随机数

rnd

随机数

[ 例 2.1] 给定一个两位数,交换十位数和个位数的位置,把处理后的数显示在窗体上。

编写的窗体单击事件过程代码如下:

Private Sub Form_Click()

Dim x As Integer, a As Integer

Dim b As Integer, c As Integer

x = 36

a = Int(x / 10)

b = x Mod 10

c = b * 10 + a

Print " 处理后的数: "; c

End Sub

[ 例 2.2] 通过随机函数产生两个两位正整数,求这两个数之和并显示出来。

编写的窗体单击事件过程代码如下:

Private Sub Form_Click()

Dim a As Integer, b As Integer, c As Integer

Randomize

a = Int(90 * Rnd + 10)

b = Int(90 * Rnd + 10)

c = a + b

Print " 放生的两个随机数: "; a, b

Print " 和数: "; c

End Sub

2.4.2 字符串函数

表 2.4 字符串函数

函 数

返回值类型

功 能

例 子

结 果

Len( 字符串 )

Integer

字符串长度

Len(“ABCD”)

4

Left( 字符串, n)

String

取左边 n 个字符

Left(“ABCD”,3)

“ABC”

Right( 字符串, n)

String

取右边 n 个字符

Right(“ABCD”,3)

“BCD”

Mid( 字符串, p[ , n])

String

从第 p 个开始取 n 个字符

MID(“ABCDE”,2,3)

“BCD”

Instr([f , ] 字符串 1 ,字符串连 [ , k])

Integer

求串 2 在串 1 中出现的位置

Instr(“ABabc”,”ab”)

3

String(n , 字符 )

String

生成 n 个字符

String(4,”*”)

“****”

Space(n)

String

生成 n 个空格

Space(5)

5 个空格

Ltrim( 字符串 )

String

去掉左边空格

Ltrim(“ AB ”)

“AB ”

Rtrim( 字符串 )

String

去掉右边空格

Rtrim(“ AB ”)

“ AB”

Trim( 字符串 )

String

去掉左、右边空格

Trim(“ AB ”)

“AB”

Lcase( 字符串 )

String

转成小写

Lcase(“Abab”)

“abab”

Ucase( 字符串 )

String

转成大写

Ucase(“Abab”)

“ABAB”

StrComp( 字符串 1, 字符串 2[ , k])

Integer

串 1< 串 2 -1

串 1= 串 2 0

串 1> 串 2 1

StrComp(“AB”,”ABC”)

-1

[ 例 2.3] 使用字符串函数示例。先从字符串 a 中找出某个指定字符(如空格),再以此字符为界拆分成两个字符串。

编写的窗体单击事件过程代码如下:

Private Sub Form_Click()

Dim a As String, b As String, c As String, n As Integer

a = "Visual Basic"

n = InStr(a, " ")

b = Left(a, n - 1)

c = Mid(a, n + 1)

Print b

Print c

End Sub

2.4.3 日期 / 时间函数

函 数

返回值类型

功 能

例 子

结 果

Date

Date

返回系统日期

Date

示例 : 11/03/2005

Time

Date

返回系统时间

Time

示例 :11:38:24

Now

Date

返回系统日期和时间

Now

示例 : 11/03/2005

11:38:24

Day( 日期 )

Integer

返回日数

Day(# 2002/9/24 #)

24

Month( 日期 )

Integer

返回月份数

Month(# 2002/9/24 #)

9

Year( 日期 )

Integer

返回年度数

Year(# 2002/9/24 #)

2002

Weekday( 日期 )

Integer

返回星期几

Weekday(# 2002/9/24 #)

3

Hour( 时间 )

Integer

返回小时数

Hour(#8:3:28 pm#)

20

Minute( 时间 )

Integer

返回分钟数

Minute(#8:3:28 pm#)

3

Second( 时间 )

Integer

返回秒数

Second(#8:3:28 pm#)

28

2.4.4 类型转换函数

函 数

返回值类型

功 能

例 子

结 果

Val(x)

Double

将数字字符串 x 转换为数值

2+val(“ 12” )

14

Str(x)

String

将数值转换为字符串,字符串首位表示符号

Str(5)

“ 5”

Asc(x)

Integer

求字符串中首字符的 ASCII 码

Asc(“AB”)

65

Chr(x)

String

将 x 转换为字符

Chr(65)

“A”

Cint(x)

Integer

将 x 转换为整形数,小数部分四舍五入

Cint(1234.57)

1235

Clng(x)

Long

将 x 转换为长整形数,小数部分四舍五入

Clong(325.3)

325

Csng(x)

Single

将 x 舍入为单精度数

Csng(56.5421117)

56.54211

Cdbl(x)

Double

将 x 转换为双精度数

Cdbl(1234.5678)

1234.5678

Ccut(x)

Currency

将 x 转换为货币型数

Ccur(876.43216)

876.4322

Cvar(x)

Variant

将 x 转换为变体型数

Cvar(99&” 00” )

“ 9900”

Hex(x)

String

将十进制数 x 转换为十六进制数

Hex(31)

&h 1f

Oct(x)

String

将十进制数 x 转换为八进制数

Oct(20)

&o24


 
双击滚屏  关闭窗口
 
版权所有数学与信息科学学院