欢迎来到天天文库
浏览记录
ID:40055511
大小:1.19 MB
页数:67页
时间:2019-07-18
《vb语言程序设计过程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、过程第七章本章内容通用过程参数传递嵌套调用过程、变量的作用域程序举例多窗体与SubMain过程Function过程Sub过程引言在VB中的两种过程:(1)由系统提供过程系统提供的内部函数过程(如sqr函数)和事件过程(click事件)。(2)由用户自定义过程用户根据实际应用的需要而自行设计的过程,这样的过程称为“通用过程”引言通用过程分为两类:函数过程:以Function保留字开始的过程。子程序过程:以Sub保留字开始的过程;例5.19求解s=1!+2!+3!+…+10!的值采用两种不同解法(1)解法一:采用两
2、重循环,外循环10次,每次循环计算一次阶乘,把每次阶乘值累加起来,即得求解结果。DimsAsLong,tAsLongs=0Forj=1To10'计算10个阶乘t=1'计算1个阶乘前,先赋初值Fork=1Toj'计算j!,需要循环j次t=t*k'连乘j次Nextks=s+t'把每次计算得到的阶乘值t累加NextjPrints阶乘n!(n!=1×2×3×…×n)PrivateSubForm_Load()ShowDimtAsLong,sAsLong,iAsIntegert=1Fori=1To5t=t*iNextis=
3、t例7.2计算5!+10!t=1Fori=1To10t=t*iNextis=s+tPrint"5!+10!=";sEndSub因为计算5!和10!都要用到阶乘n!(n!=1×2×3×…×n)所以把计算n!编成Sub过程。PrivateSubForm_Load()ShowDimyAsLong,sAsLongCallJc(5,y)s=yCallJc(10,y)s=s+yPrint"5!+10!=";sEndSub程序运行结果:5!+10!=3628920PrivateSubJc(nAsInteger,tAsLong
4、)DimiAsIntegert=1Fori=1Tont=t*iNextiEndSub注意参数n及t的调用情况例7.2计算5!+10!过程有两个重要作用:一是把一个复杂的任务分解为若干个小任务,可以用过程来表达,从而使任务更易理解,更易实现,将来更易维护;二是代码重用,使同一段代码多次复用。过程的作用过程调用示例把相同的任务编成相对独立的“子过程”当事件过程需要执行这个任务时,可使用调用语句(如Call)实行调用。子过程执行完后,会返回事件过程中调用语句Call的后续语句继续执行调用过程……CallSubA……C
5、allSubA……CallSubB……子过程SubA子过程SubB通用过程例7.1Sub过程示例PrivateSubForm_Load()ShowCallmysub1(30)Callmysub2Callmysub2Callmysub2Callmysub1(30)EndSub程序运行结果PrivateSubmysub1(n)PrintString(n,"*")EndSubPrivateSubmysub2()Print"*";Tab(30);"*"EndSubSub过程参数n无参数Sub过程的定义格式:[Stati
6、c][Public
7、Private]Sub过程名(参数表列)语句块[ExitSub]语句块EndSub功能:定义一个以<子过程名>为名的Sub过程。(1)在VB中,Sub过程又称为子过程。(2)在子过程中如果没有形参,调用时括号()必须省略。Callmysub2或mysub2Sub过程的调用格式:Call过程名(实参列表)或过程名实参列表说明:①实参的个数、类型、顺序应与相应的形参保持一致,子过程中如果没有形参,则调用中也无实参。②第2种调用方式与第1种相比,结果一样,只是去掉Call和一对括号()。例如,调用
8、名为mysub1的过程:Callmysub1(30)mysub130函数过程[Static][Public
9、Private]Function函数过程名([参数列表])[As类型]语句块函数名=返回值[ExitFunction]语句块函数名=返回值EndFunction功能:定义一个以<函数名>为名的Function过程。函数过程体函数过程说明1.As类型:返回值的类型2.函数名=返回值函数过程必须返回函数值,而函数名就代表了函数值,在函数体内至少对函数名赋值一次。若不赋值则默认返回值为0或空串或空值。函数名本
10、身就是变量。函数过程的调用形式:变量名=函数过程名(实参列表)或print函数过程名(实参列表)功能:调用一个已定义的Function过程。jiechen(5)jiechen(6)jiechen(7)a=jiechen(5)b=jiechen(6)c=jiechen(7)Printjiechen(5)+jiechen(6)+jiechen(7)将n!的Sub过程改为Function过程
此文档下载收益归作者所有