文档详情

vb程序设计第9章.pptx

发布:2020-02-23约1.2万字共63页下载文档
文本预览下载声明
调用过程: 调用Sprg1调用Sprg1调用Sprg2子过程: Sprg1子过程: Sprg2过程的引入: 使同类的操作不重复 (操作方法相同、参数不同)过程: 完成一段独立功能,可供其他过程使用(调用)。 过程又称为子程序调用过程: 调用其他过程的过程过程分类: 内部函数 自定义函数Function过程*内部过程(方法) 事件过程 自定义过程Sub过程9.1 Function过程9.1.1 Function过程的定义1. Function过程的格式 [Public|Private][Static] Function 函数过程名 ([形参表]) [As 类型] [语句组] [函数过程名 = 表达式] [Exit Function] [语句组] [函数过程名 = 表达式] End Function2. 说明(1) Public: 缺省值。使用Public时表示所有模块的所 有其他过程都可以调用该Function过程。(2) Private: 使用Private时表示只有本模块中的其他 过程才可以调用该Function过程。(3) Static: 使用Static时表示将过程中的所有局部变 量说明为静态变量。(4) 函数过程名: Function过程的名称,遵循变量 的命名规则。(5) 形参表: 表示在调用时要传递给Function过程的参数变量列表。多个变量之间用逗号隔开。 形参表格式: [ByVal|ByRef]变量名[( )] [As 类型] ByVal: 表示该参数按值传递。 ByRef: 缺省值。表示该参数按地址传递。 变量名: 遵循变量命名规则的任何变量名 或数组名。 ( ): 当参数为数组时使用。(7) Exit Function语句: 从Function过程中退出。(8) Function过程通过赋值语句 函数过程名 = 表达式 将函数的返回值赋给函数过程名。(9) Function过程的定义不能嵌套。Function过程的建立: ? 直接在代码窗口中输入。 ? 在代码窗口: 工具→ 添加过程。【例9-1】编写一个计算n!的Function过程。 Function Fact(N As Integer) As Long Dim I As Integer, F As Long F = 1 F用于保存阶乘值 For I = 1 To N F = F * I Next I Fact = F 给函数过程名赋值 End Function【例9-2】编写一个Function过程,计算下面表达式的值。 Function F(X, Y, Z) F = Sqr(Abs(X ^ 3 + Y ^ 3 + Z ^ 3)) End Function9.1.2 Function过程的调用 直接在表达式中调用。 格式: 函数过程名([实参表]) 实参表: 常量、变量或表达式,各参数之间用逗号分隔。如果是数组,在数组名之后必须跟一对空括号。【例9-3】从键盘上任意输入一个整数,然后调用例9-1编写的函数过程计算其阶乘数。 自定义求阶乘的函数过程FactFunctin Fact(N As Integer) As Long Dim I As Integer, F As Long F = 1 For I = 1 To N F = F * I Next I Fact = F 给函数过程名赋值End Function 在按钮的Click事件过程中调用函数过程Private Sub Command1_Click() Dim X As Integer X = Val(Text1.Text) Label2.Caption = Trim(Str(X)) 的阶乘数为: Label3.Caption = Trim(Str(Fact(X))) End SubOLE1控件VScroll1Command1Text1Text3Text2VScroll29.1.3 Function过程举例【例9-4】利用Function过程计算阶乘,求组合数。设计界面如下图所示。运行时,在文本框Text1和Text2中输入n和m值,或通过文本框旁的滚动条调整n和m的值,单击“=”按钮计算组合数,结果显示于文本框Text3中。控件名称属性名属性值OLE1BackStyle0 - TransparentBorderStyle0 - NoneSizeMode2 - AutoSizeVscroll1Max0Min0Value0Vscroll2Max0Min50Value0主要属性设置如下: 定义求阶乘的函数FactFunction Fact(N As Integer) As Double Dim F As Do
显示全部
相似文档