《Visual Basic语言程序设计教程(第二版)》课件第10章 过程.ppt

上传人(卖家):momomo 文档编号:7333377 上传时间:2023-11-28 格式:PPT 页数:19 大小:444KB
下载 相关 举报
《Visual Basic语言程序设计教程(第二版)》课件第10章 过程.ppt_第1页
第1页 / 共19页
《Visual Basic语言程序设计教程(第二版)》课件第10章 过程.ppt_第2页
第2页 / 共19页
《Visual Basic语言程序设计教程(第二版)》课件第10章 过程.ppt_第3页
第3页 / 共19页
《Visual Basic语言程序设计教程(第二版)》课件第10章 过程.ppt_第4页
第4页 / 共19页
《Visual Basic语言程序设计教程(第二版)》课件第10章 过程.ppt_第5页
第5页 / 共19页
点击查看更多>>
资源描述

1、 结构化的程序中,经常将一个较大的程序划分成若干结构化的程序中,经常将一个较大的程序划分成若干个较小的程序模块,每个模块只完成一个或若干个功能。个较小的程序模块,每个模块只完成一个或若干个功能。这些模块通过执行一系列语句完成一个特定的操作,称为这些模块通过执行一系列语句完成一个特定的操作,称为“过程过程”。程序中使用过程程序中使用过程的好处的好处:v过程可使大程序分解成多个逻辑单元,容易编写、调试。过程可使大程序分解成多个逻辑单元,容易编写、调试。v一个程序中的过程可以为另一个程序使用。一个程序中的过程可以为另一个程序使用。VBVB中过程分为两类中过程分为两类:子程序过程:子程序过程(Sub(

2、Sub过程过程)和函数过程和函数过程(Function(Function过程过程)。SubSub过程过程(子过程子过程):完成一定的操作和功能,:完成一定的操作和功能,无返回无返回值值,通过程序调用和事件触发而执行,分为,通过程序调用和事件触发而执行,分为事件过程事件过程和和通用过程通用过程。FunctionFunction过程过程(函数过程函数过程):相当于用户自定义的函:相当于用户自定义的函数,通过程序调用才能被执行,并且可将数据处理的数,通过程序调用才能被执行,并且可将数据处理的结果返回结果返回。概概 述述 1.1.事件过程事件过程 特点:特点:1 1)这类过程)这类过程与对象有关与对象

3、有关,对象事件触发后被调用。,对象事件触发后被调用。2 2)事件过程的过程名由系统自动指定。)事件过程的过程名由系统自动指定。建立对象的事件过程:建立对象的事件过程:1)1)进入代码窗口进入代码窗口 2 2)选择选择“对象对象”和和“事件过程事件过程”,系统自动形成该事件,系统自动形成该事件过程的头和尾过程的头和尾 3)3)编写该事件的程序代码编写该事件的程序代码 “对象对象”“事件过程事件过程”10.1 Sub过程过程2.2.通用通用SubSub过程过程 特点:特点:1 1)这类过程与对象无相关,是用户创建的一段)这类过程与对象无相关,是用户创建的一段共享代码共享代码。2 2)过程的名称由用

4、户自己来命名。)过程的名称由用户自己来命名。建立通用建立通用SubSub过程:过程:1)1)建立过程框架建立过程框架方法方法1 1:在模块的:在模块的“通用通用”段中输入过程名,按回车后系段中输入过程名,按回车后系统自动添加统自动添加 End SubEnd Sub。方法方法2 2:“工具工具添加过程添加过程”2)2)编写该过程的程序代码编写该过程的程序代码10.1 Sub过程过程格式:格式:Private|PublicStatic Sub Private|PublicStatic Sub()1 Exit Sub Exit Sub 2End SubEnd Sub10.1 Sub过程过程其中:其中

5、:lPubicPubic或或PrivatePrivate:PubicPubic过程可在整个程序范围内被调用,过程可在整个程序范围内被调用,而而PrivatePrivate过程只能在本窗体或模块中被调用。过程只能在本窗体或模块中被调用。l StaticStatic:表示过程中的局部变量是静态变量,在调用过:表示过程中的局部变量是静态变量,在调用过程结束后,其值仍然被保留。程结束后,其值仍然被保留。l 过程名过程名:是该过程的唯一名字,命名规则如变量:是该过程的唯一名字,命名规则如变量l 它指明了从调用过程传送给子过程的变量个数及它指明了从调用过程传送给子过程的变量个数及数据类型,之间用逗号分隔,

6、如:数据类型,之间用逗号分隔,如:(a,b,x)(a,b,x)。中出现中出现的参数称为形式参数,简称形参。的参数称为形式参数,简称形参。10.1 Sub过程过程 形参形参并不代表一个实际存在的变量,也没有固定的值。并不代表一个实际存在的变量,也没有固定的值。它完全由调用过程的程序决定其内容,只是一个它完全由调用过程的程序决定其内容,只是一个“形式上形式上的变量参数的变量参数”。只在被调用时被一确定的值代替,。只在被调用时被一确定的值代替,故形参故形参的名字并不重要,重要的是其表示的对应关系和调用时所的名字并不重要,重要的是其表示的对应关系和调用时所给定的实际参数。给定的实际参数。Exit Su

7、bExit Sub:退出过程。:退出过程。10.1 Sub过程过程通用过程的调用通用过程的调用1.1.使用使用CallCall语句调用语句调用 格式:格式:Call Call 过程名过程名 是实际参数列表,参数之间用逗号分隔。是实际参数列表,参数之间用逗号分隔。实参实参的作用是的作用是:将使用中的实际值传送给被调用过程中的形参,:将使用中的实际值传送给被调用过程中的形参,供其计算;或从过程中接收经过程计算的结果,实现数据传供其计算;或从过程中接收经过程计算的结果,实现数据传递。递。实参的实参的个数个数、数据类型数据类型都应与被调用过程的形参都应与被调用过程的形参一一对一一对应应。如无参数,可以

8、省略()。如无参数,可以省略()。10.1 Sub过程过程一个一个调用调用计算圆面积及周长过程计算圆面积及周长过程(sr)(sr)的的Private Sub Command1_Click()Private Sub Command1_Click()Dim r,a,s As Single Dim r,a,s As Single r=Val(InputBox(r=Val(InputBox(输入半径输入半径R)R)Call sr(r,a,s)Call sr(r,a,s)Print:Print:Print Print:Print:Print Print“Print“半径:半径:;r;r Print“Pr

9、int“面积:面积:;a;a Print“Print“周长:周长:;s;s End Sub End Sub计算圆面积和周长的子过程:计算圆面积和周长的子过程:Private Sub sr(a,c,b)Const pi=3.1416 c=a*a*pi 计算面积计算面积 b=2*pi*a 计算周长计算周长End Sub10.1 Sub过程过程2.2.直接使用过程名调用直接使用过程名调用 格式:过程名格式:过程名 实参实参,实参,实参Private Sub Command1_Click()Private Sub Command1_Click()Dim r,a,s As Single Dim r,a,

10、s As Single r=Val(InputBox(r=Val(InputBox(输入半径输入半径R)R)sr r,a,ssr r,a,s Print:Print:Print Print:Print:Print Print“Print“半径:半径:;r;r Print“Print“面积:面积:;a;a Print“Print“周长:周长:;s;sEnd Sub End Sub 10.1 Sub过程过程 函数也属于过程。它与子过程的函数也属于过程。它与子过程的根本区别根本区别是可以返回是可以返回一个一个值值给调用程序。其定义方法同过程相似,也有两种。给调用程序。其定义方法同过程相似,也有两种。

11、1.1.利用利用“添加过程添加过程”对话框定义对话框定义 打开窗体或模块的代码窗口,单击打开窗体或模块的代码窗口,单击“工具工具”菜单,选择菜单,选择“添加过程添加过程”,然后在对话框的,然后在对话框的“类型类型”中选择中选择“函数函数”即即可。可。2.2.直接在代码窗口定义直接在代码窗口定义 进入代码窗口后,在左侧显示对象名的下拉列表框中选进入代码窗口后,在左侧显示对象名的下拉列表框中选择择“通用通用”,在右侧显示过程的下拉列表框中选择,在右侧显示过程的下拉列表框中选择“声明声明”,然后输入然后输入FunctionFunction及函数名即可。及函数名即可。10.2 函数过程函数过程格式:格

12、式:FunctionFunction ()AsAs1 函数名函数名=Exit FunctionExit Function2 函数名函数名=End End FunctionFunction 可以在可以在FunctionFunction前加上前加上Public|Private|StaticPublic|Private|Static表示作用表示作用范围。范围。如:如:Private Function area(a)As SinglePrivate Function area(a)As Single10.2 函数过程函数过程 一个计算圆面积的函数过程一个计算圆面积的函数过程(farea)(farea)

13、:Private Function farea(a)As Single Private Function farea(a)As Single rara Const pi=3.1416Const pi=3.1416 farea=a farea=a*a a*pi pi计算面积计算面积 End FunctionEnd Function 函数通过函数名返回计算值函数通过函数名返回计算值,子过程通过形参返回计算子过程通过形参返回计算值值。10.2 函数过程函数过程函数的调用函数的调用1.1.使用使用CallCall语句调用语句调用如函数名为如函数名为fareafarea,则可用命令:,则可用命令:Cal

14、l farea(r)Call farea(r)调用该函数。调用该函数。但用这种方法调用函数时,没有返回值。但用这种方法调用函数时,没有返回值。2.2.使用函数名调用使用函数名调用如函数名为如函数名为fareafarea,也可用命令:,也可用命令:farea rfarea r调用该函数。调用该函数。这种方法调用函数时,同样没有返回值。这种方法调用函数时,同样没有返回值。10.2 函数过程函数过程一个调用计算圆面积的函数过程一个调用计算圆面积的函数过程(farea)(farea)Private Sub Command1_Click()Private Sub Command1_Click()Dim

15、r As SingleDim r As Single r=Val(InputBox(r=Val(InputBox(输入半径输入半径R)R)Print Print 半径半径 :;r;r Print Print 圆面积圆面积 :;Int(;Int(fareafarea(r r)*10)/10 10)/10 End SubEnd Sub Private Function farea(a)As Single ra Const pi=3.1416 farea=a*a*pi 计算面积End Function10.2 函数过程函数过程 在在SubSub、FunctionFunction过程中参数列表的参数称

16、为过程中参数列表的参数称为形参形参。程序。程序中调用中调用SubSub、FunctionFunction过程时,参数列表中的参数为过程时,参数列表中的参数为实参实参。实参的次序与形参的次序应匹配且一一对应。实参的次序与形参的次序应匹配且一一对应。即:即:Call mysub(a,b(),c)(aCall mysub(a,b(),c)(ax x,b,by y,c,cz z)10.3 过程参数过程参数 VBVB中参数传递有中参数传递有值传递值传递和和地址传递地址传递两种方式。两种方式。1 1)值传递值传递(ByVal)(ByVal):实参与形参通过直接传送数据值:实参与形参通过直接传送数据值的方式

17、传递数据。因为被调用的子过程中的形参没有直的方式传递数据。因为被调用的子过程中的形参没有直接访问实参地址中的原始数据,因而也就不能修改实参接访问实参地址中的原始数据,因而也就不能修改实参的数据。的数据。在值在值传递传递方式中方式中,对形参的修改不会影响实参数据对形参的修改不会影响实参数据。10.3 过程参数过程参数 2 2)地址传递地址传递(ByRef)(ByRef):实参与形参的数据传递实参与形参的数据传递,以传送以传送数据地址方式进行数据地址方式进行,是实参与形参传送的是实参与形参传送的默认方式默认方式。实参的数据值存放在内存的某个地址中,当调用某实参的数据值存放在内存的某个地址中,当调用

18、某子过程时,将实参的地址传递给形参。这样,在被调子过程时,将实参的地址传递给形参。这样,在被调用的子过程中,即可通过该地址获得实参的数据。同用的子过程中,即可通过该地址获得实参的数据。同时,在该时,在该子过程子过程中对形参数据的修改,实际上也是对中对形参数据的修改,实际上也是对实参地址上数据的修改。实参地址上数据的修改。地址传递方式中,地址传递方式中,对形参数据的修改就是对实参数对形参数据的修改就是对实参数据的修改据的修改。10.3 过程参数过程参数传送方式的选择传送方式的选择 地址传递方式的效率比值传递方式高,但形参并不是地址传递方式的效率比值传递方式高,但形参并不是一个真正的局部变量,有可

19、能使计算的数据产生不可预一个真正的局部变量,有可能使计算的数据产生不可预见的错误。见的错误。值值传递传递方式的效率虽然较低方式的效率虽然较低,但形参是一个真正的局,但形参是一个真正的局部变量,其计算的数据可预见程度较高。部变量,其计算的数据可预见程度较高。10.3 过程参数过程参数 Private sub command1_click()Private sub command1_click()dim m as integer,n as integerdim m as integer,n as integer m=15:n=20m=15:n=20 call change(m,n)call change(m,n)Print m=;m,n=;n Print m=;m,n=;n End subEnd sub 参数传递示例参数传递示例

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《Visual Basic语言程序设计教程(第二版)》课件第10章 过程.ppt)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|