文档详情

VB程序设计第3版第8章教学材料.ppt

发布:2022-03-13约1.13万字共124页下载文档
文本预览下载声明
第8章; 什么是过程?;;8.1 Function过程(函数过程);[语句组] 函数过程名 = 表达式 [Exit Function] [语句组];说明: Public:缺省值。使用Public时表示各模块的所有其他过程都可以调用该过程。 Private:使用Private时表示只有本模块中的其他过程才可以调用该Function过程。 Static:使用Static时表示将过程中的所有局部变量说明为静态变量。 函数过程名: 应遵循变量的命名规则。 形参表: Function过程的参数列表。多个参数之间用逗号隔开。可以是: [ByVal |ByRef |Optional |ParamArray] 参数名[( )] [As 类型];As 类型:定义函数??程的返回值的数据类型, Function过程通过赋值语句: 函数过程名=表达式 将函数的返回值赋给“函数过程名”。 如果省略该语句,则数值函数过程返回0,字符串函数过程返回空串。 Exit Function语句: 从Function过程中退出。;2. Function过程的建立 建立位置:模块的通用声明段 窗体模块 标准模块 类模块 建立方法 直接在代码窗口中输入 使用菜单命令:工具|添加过程 先切换到代码窗口,才可以使用该菜单命令。;分析:假设函数过程名称为F。求表达式 的值需要已知x、y、z的值,因此应给函数过程设置三个参数x、y、z。在过程体中需要给F赋值,以便通过函数过程名F返回函数值。;分析:假设函数过程名称为Fact。求N!只需给函数过程设置一个参数N。函数过程体的功能就是求Fact=N!;分析:假设函数过程名为Sum。本例需要用数组作参数,设数组参数名为X,则要在X之后加一对空圆括号。函数过程的功能就是求数组X的所有元素之和,保存到函数名Sum中。;8.1.2 Function过程的调用;【例8-4】输入m和n的值,调用例8-2的函数过程Fact求组合数。求组合数公式如下:;Function Fact(N As Integer) As Long End Function;Private Sub Command1_Click() Dim m As Integer, n As Integer, _ c As Double n = Val(Text1.Text) m = Val(Text2.Text) c = Fact(m) / (Fact(n) * (Fact(m - n))) Text3.Text = c End Sub;【例8-5】生成10个包含[1,5]之间的随机整数的一维数组,调用例8-3的函数过程求该数组的所有元素之和。;1)在代码窗口的通用声明段声明数组A为具有10个元素的一维整型数组,使A成为模块级数组。;Function Sum(x() As Integer) As Long End Function;Private Sub Command1_Click() Randomize Text1.Text = For i = 1 To 10 A(i) = Int(Rnd * 5 + 1) Text1.Text = Text1.Text Str(A(i)) Next i End Sub;4)编写“求和”按钮Command2的Click???件过程,调用函数过程Sum求数组各元素的和,并将和值显示在标签Label1中。;【例8-6】编写函数过程求两个数的最大公约数,通过调用该函数过程求三个数的最大公约数。; Function gcd(m As Integer, n As Integer) _ As Integer Dim r As Integer r = m Mod n 求m除以n的余数r Do While r 0 当余数不为0时进入循环 m = n 将除数n作为被除数m n = r 将余数r作为除数n r = m Mod n 求m除以n的余数r Loop gcd = n End Function;Private Sub Command1_Click() Dim A As Integer, B As Integer, _ C As Integer Dim X As Integer, Y As Integer A = V
显示全部
相似文档