第5章过程.ppt
《第5章过程.ppt》由会员分享,可在线阅读,更多相关《第5章过程.ppt(52页珍藏版)》请在优知文库上搜索。
1、第5章 过程第5章 过程5.1 Sub过程5.2 函数过程5.3 参数传递5.4 变量的作用范围引入新课n我们在前面学习过:n可以通过循环结构来反复执行某种操作。n循环结构只能在程序中的某个位置反复进行特定的操作,若该操作需要在程序中的多个位置出现,那么,在需要进行这种操作的地方都需要一个循环结构的出现,这样使得程序的复杂程度增加。n解决上述问题的方法是使用子程序(过程)。nVB提供的系统函数即是函数过程的实例。引入新课nVisual Basic中的自定义过程分为:n以Sub保留字开始的Sub过程。这种过程不直接返回值,但是可以通过参数或模块级变量、全局变量来返回多个值。n以Function保
2、留字开始的函数过程,过程通过函数名可直接返回一个值。5.1 Sub过程n在程序多个位置多次重复出现的操作:n不是计算得到某个结果,而是要完成特定的操作n或需要返回多个结果n则可将这些操作定义为Sub过程(子过程),在程序中需要这些操作的地方,通过调用该Sub过程即可。5.1 Sub过程n建立Sub过程的方法:n利用“工具”菜单下的“添加过程”命令,生成一个Sub过程框架,然后再输入相应的代码。n在代码窗口中直接定义。即:在窗体、模块等的代码窗口,在所有过程之外直接输入Sub过程。5.1 Sub过程n自定义Sub过程的形式如下:Private|Public Sub 过程名(形参列表)局部变量或常
3、量声明 语句块 Exit Sub 语句块End Sub5.1 Sub过程n说明:nPrivate定义过程为局部过程,即该过程只能被过程所在模块的其它过程调用。Public定义过程为全局过程,即该过程可被所有模块中的过程调用。默认为Public。n过程名为过程的标识,其命名规则与变量的命名规则相同。n形参列表:n形式为:形参1 As 类型,形参2 As 类型,n形参只能是变量名或数组名,仅表示参数的个数、类型n形参两边的括号不能省略nExit Sub:表示退出Sub过程5.1 Sub过程n调用Sub过程:nCall 子过程名(实参列表)n子过程名实参列表n说明:n用Call关键字来调用Sub过程
4、时,若有实参,则实参需要用括号括起来;用过程名方式调用子过程,则实参两边的括号可以省略n若要通过实参返回结果,那么,实参只能是与形参同类型的简单变量、数组名、结构类型,而不能是常量、表达式或控件名。5.1 Sub过程n【例5-2】编写一过程实现两个数的交换Sub Swap(x As Integer,y As Integer)Dim t As Integer t=x:x=y:y=tEnd SubPrivate Sub Form_Click()Dim a As Integer,b As Integer a=3:b=4 Print 调用前:a=&a&,b=&b Call Swap(a,b)Print
5、 调用后:a=&a&,b=&bEnd Sub5.1 Sub过程n运行结果5.1 Sub过程n通用过程和事件过程n通用过程n由用户自定义,可放在窗体模块中,也可放在标准模块中n由用户在过程或函数中自行调用n分为Sub过程和函数过程两大类n事件过程n对事件的响应代码,只可以放在窗体模块中n在发生特定事件时由Visual Basic自动调用,也可以被同一模块中的其它过程调用n事件过程框架由系统指定5.1 Sub过程n事件过程的框架:Private|Public Sub 对象名_事件名(参数列表)语句块End Sub5.1 Sub过程n关于过程的调用n通用过程之间、事件过程之间、通用过程与事件过程之间
6、,都可以互相调用。nPublic过程可以被其它模块中的过程调用。若过程名在所有模块范围内唯一时,可以直接使用过程名调用,否则调用过程时,需要在过程名前加上模块名:模块名.过程名(实参列表)5.1 Sub过程5.2 函数过程n函数的定义:Public|Private Function 函数名(形参列表)As 类型 局部变量或常量的声明 语句块 函数名=返回值 Exit Function 语句块 函数名=返回值End Function5.2 函数过程n说明:n函数名命名规则、形参列表形式同Sub过程中相应项的规定nAs 类型:函数返回值的类型n函数名=返回值:在函数中至少要对函数名赋值一次,该值即
7、是函数的运算结果5.2 函数过程n函数的调用:n自定义函数的调用与内部函数的调用相同,格式如下:函数名(实参列表)n函数的返回值将参与表达式的计算5.2 函数过程【例5-3】编写一个求最大公约数的函数过程。Function gcd(m As Integer,n As Integer)As Integer Dim r As Integer,t As Integer If m n Then t=m:m=n:n=t r=m mod n Do While r0 m=n:n=r:r=m mod n Loop gcd=nEnd Function5.2 函数过程n调用求最大公约数函数过程的示例:Privat
8、e Sub Form_Click()Dim x As Integer,y As Integer,z As Integer x=36:y=54 Print x&和&y&的最大公约数是:;z=gcd(x,y)Print zEnd Sub5.2 函数过程【例5-4】编写一个HuiWen函数,用于判断一个字符串是否是“回文”。Function HuiWen(str1 As String)As String Dim L As Integer,k As Integer Dim Ls As String,Rs As String L=Len(str1):k=1 Do Ls=Mid(str1,k,1)Rs=M
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 过程
