文档介绍:第七章 过程
过程概述
Function过程
Sub过程
参数传递
嵌套调用和递归调用
语句块
[Exit Function]
[语句块]
函数名=表达式
End Function
语法格式
形参列表:[ByVal | ByRef]变量名[()][As 类型]
说明
按值传递
地址传递
Function过程的定义
1. 定义格式
[Public|Private] [Static] Function函数名([形参列表]) [As 类型]
局部变量或常量声明
语句块
[Exit Function]
[语句块]
函数名=表达式
End Function
语法格式
As类型:函数返回值的数据类型,如果省略,则默认为Variant类型。
Exit Function:用于退出函数过程,一般与条件语句配合使用。
说明
Function过程的定义
1. 定义格式
[Public|Private] [Static] Function函数名([形参列表]) [As 类型]
局部变量或常量声明
语句块
[Exit Function]
[语句块]
函数名=表达式
End Function
语法格式
函数过程的返回值通过赋值语句”函数名=表达式”实现返回。如果没有”函数名=表达式”,则数值型函数返回0,字符串函数返回空串(”“)
说明
Function过程的定义
2. Function过程的建立
(1)利用代码窗口直接建立
在代码窗口把插入点放在所有现有过程之外,键入Function函数名语句并按回车,代码窗口自动显示End Function。
(2)使用“添加过程”对话框建立
选择“工具”→“添加过程”命令,打开“添加过程”对话框。
Function过程的定义
2. Function过程的建立
编写一个计算圆面积的Function过程Carea。
【】设计要求
Private Function Carea(r As Single) As Single
Const PI As Single =
Carea = PI * r * r
End Function
Function过程的定义
2. Function过程的建立
编写一个素数判断的Function过程IsPrime。
【】设计要求
Private Function IsPrime(n As Integer) As Boolean
Dim i As Integer
IsPrime = True
For i = 2 To n - 1
If (n Mod i) = 0 Then
IsPrime = False
Exit Function
End If
Next i
End Function
Function过程的调用
函数名:必须是已经定义的Function函数名。
实参列表:指要传递给函数过程的常量、变量或表达式,各个参数之间用逗号分隔。
语法格式
函数名([实参列表])
功
能
按指定的参数调用已定义的函数过程。
说明
Function过程的调用
程序运行时,在Text1中输入圆半径的值,单击“圆面积”按钮,调用Carea函数来计算圆面积,并在Text2中显示计算结果。
【】设计要求
Private Sub Command1_Click()
Dim r As Single, s As Single
r = Val()
s = Carea(r)
= Str(s)
End Sub
Function过程的调用
程序运行时单击“输出显示”按钮,调用IsPrime函数过程在Text1中输出100~300的全部素数 。
【】设计要求
Private Sub Command1_Click()