新Visual Basic程序设计 教学课件 解凯 陈如琪 第六章 VB过程.pptVIP

  • 10
  • 0
  • 约1.09万字
  • 约 53页
  • 2016-10-26 发布于广东
  • 举报

新Visual Basic程序设计 教学课件 解凯 陈如琪 第六章 VB过程.ppt

第六章 过程 Sub过程 Function过程 参数的传递 递归调用 变量与过程的作用域和生存期 6.1 Sub过程 例6-1 执行两个数的交换。 分析:两个数交换的过程供多次调用。为了普遍性应用,将两个变量定义为Varient类型。另外,两个数交换,需要第三个变量作为临时存储空间,实现两个数的交换 两个数据交换子过程 Public Sub Swap(x As Variant, y As Variant) Dim t As Variant t = x x = y y = t End Sub Private Sub Form_Click() Dim a As Variant, b As Variant a = 10 b = 20 Print “交换前a=“; a; “b=“; b Swap a, b 调用子过程 Print “交换后a=“; a; “b=“; b End Sub VB的子过程分为事件过程和通用过程两类 通用过程: 完成相对独立功能的程序段 事件过程:响应某个事件的程序段 通用过程也称为过程或子过程 VB中称为sub过程 用于使程序更加简洁,可以避免程序代码的重复 1 Sub过程的定义 Sub过程的定义格式: [ Private | Public ]??[ Static ] Sub 过程名 ([形式参数列表]) 语句块 End sub 说明: 一个Sub过程已Sub开头,以End Sub结束,两者必须成对出现。在两者之间的语句块称为“过程体”。程序运行到End Sub就退出过程,继续执行调用语句下面的语句。 过程名的命名规则与变量命名规则相同。 形式参数:简称形参,类似于变量声明,声明了从调用过程传递给过程的变量或数组名的类型和个数,它们之间用逗号分割。参数可以省略,但参数两端的圆括弧不能省略。 Private关键字:声明模块级过程,表示Sub过程是局部的、私有的,只有在声明它的模块中才可以调用此过程。 Public关键字:声明全局级过程,表示Sub过程是全局的、公有的,在所有过程模块中都可以使用,可以省略。若没选用关键字,表示过程是全局的过程。 Static 关键字:表示Sub过程也是局部的、私有的,主要是使过程中的变量在此过程中多次被调用依然保留原本值。 Sub过程的定义有两种方法: 在代码窗口中,利用“工具”菜单下的“添加过程”命令,插入一个过程模板来生成一个过程的框架 利用代码窗口直接把插入点放在所有过程之外,直接输入过程。 例6-2 编写一个子过程计算n! 通过上述两种方法建立过程 应有两个参数:n和结果t Private Sub fac(n%, t) Dim i% t=1 For i=1 to n t=t*i Next i End Sub 2 Sub过程的调用 调用Sub过程,必须使用独立的语句来调用。调用sub过程有两种方法: (1)Call 过程名 [(实际参数列表)]?? (2)过程名??[(实际参数列表)]????? 第一种方法借助call 关键字来调用过程,参数需要用括号括起来,如果没有参数,直接使用Call 过程名 调用无参过程 第二种方法不用括号包含参数 当程序的执行流程遇到上述调用语句时,自动转到被调用的过程中。当被调过程执行完毕后,又返回到调用语句下一条语句执行,继续执行主调过程中剩余的程序代码。 用Call语句调用过程时,实际参数必须写在括号内。各参数值间用逗号隔开, 例如:Call Swap (a, b) 或 Swap a, b 实际参数也简称实参:可是常量、变量或表达式 参数列表:它必须与形参个数相同,位置与类型一一对应 当参数是数组时,形参在参数声明时应省略其维数,但形参数组的括号不能省,而实参只用数组名 例6-2(续) 编写一个子过程计算n!,然后用其计算5!+13!-9! Private Sub Form_Click() Dim a, b, c, d As Long Call fac(7, a) ‘ fac 7, a Call fac(13, b) ‘ fac 13, b Call fac(9, c) ‘ fac 9, c d=a + b – c

文档评论(0)

1亿VIP精品文档

相关文档