- 1、本文档共124页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 过 程 什么是过程? 过程是一段程序,能完成一种相对独立的功能,可供其他程序使用(调用)。 过程的执行: 常用过程的分类: 8.1 Function过程(函数过程) 当在程序中要重复处理某一函数关系,而又没有现成的内部函数可以使用时,程序员可以自己定义函数,并采用与调用内部函数相同的方法来调用自定义函数。 8.1.1 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过程的调用 1. 调用位置 直接在表达式中调用。 2. 调用格式 函数过程名([实参表]) 其中, “实参表”可以是常量、变量、表达式、数组名() “实参表”各参数之间用逗号分隔 实参表的个数、顺序、类型要与形参一致 【例8-4】输入m和n的值,调用例8-2的函数过程Fact求组合数。求组合数公式如下: 1)在模块的通用声明段编写例8-2的函数过程: 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的函数过程求该数组的所有元素之和。 Function Sum(x() As Integer) As Long End Function 【例8-6】编写函数过程求两个数的最大公约数,通过调用该函数过程求三个数的最大公约数。 Private Sub Command1_Click() Dim A As Integer, B As Integer, _ C As Integer Dim X As Integer, Y As Integer A = Val(Text1.Text) B = Val(Text2.Text) C = Val(Text3.Text) X = gcd(A, B) Y = gcd(X, C) Label2.Caption = Y End Sub 【例8-7】编写判断一个数是否为素数的函数过程,利用该函数过程验证哥德巴赫猜想:一个不小于6的偶数可以表示为两个素数之和。例如6=3+3 8=3+5 10=3+7。 2)编写Command1的Click事件过程,从文本框Text1输入数据N,将该数分解为两个素数: 【例8-8】编写一个函数过程返回指定个数的字符串,字符串以A开始,例如,当指定个数为5时,函数过程返
文档评论(0)