- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
函数和过
子过程和函数过程;主要介绍:
定义Sub过程
定义Function函数过程
调用Sub过程或Function函数过程
编写过程,可以实现代码重复使用。;8.1.1 什么是过程
过程是编写程序的功能模块
使用过程主要有以下两方面的原因:
1.可以把复杂的问题简单化
任务分解为子任务,子任务用过程实现
使程序结构清晰、易读,也便于调试和维护。
2.可以实现代码重复使用
可以避免重复编写的烦琐
可以减少出错。;;通用过程又分两类:
Sub过程(子过程、子程序)
往往用于处理不需要有返回值的一些基本任务
如显示矩阵。
Function函数过程:
可作为函数使用,它一般应有一个返回值
如求阶乘。;8.4.1 定义Sub过程
Sub过程一般指通用子过程,可在程序中调用执行,执行完毕后无返回值。
格式:
Sub 过程名([参数列表]) [ 语句块 ]End Sub;1.关于格式
过程名的命名方式与变量名命名一致。
参数列表为调用时传递给Sub过程的参数,用逗号间隔。
Sub过程也可以没有参数,但括号不可省。
Sub和End Sub必须成对出现;2.关于语句块
语句块即为过程体,与事件过程的代码编写一样
包含变量声明和可执行的语句、方法等
可以由顺序、分支、循环三种结构综合而成。
语句块中可直接使用参数;
完整代码应为: Sub Hello(XXX) Document.write(XXX 你好!“)End Sub
以上过程的过程名为Hello
参数为XXX
过程体只用了一句,并同时使用了参数XXX。;程序中使用调用语句可调用Sub过程
过程运行完毕或跳出过程运行后,返回到调用处。
1.调用Sub过程的方法
使用以下两种格式之一:格式一:过程名 [参数列表] 格式二:Call 过程名[(参数列表)]
例如Hello过程,可以使用:
Hello 王小红 或 Call Hello(王小红);【例】分析以下程序:Sub A(n) Dim i For i = 1 To n
Document.write(i)
Next Call BEnd SubSub B() Document.write(BBBBBB“)End SubCall A(9)A 9
A(9) ;2、 定义Function函数过程
Function函数过程执行完毕后有一个返回值。而SUB过程没有返回值。
函数过程定义后,可像系统函数一样使用。
格式:Function 函数名([参数列表]) [函数体]End Function;1.关于格式
函数名、参数列表的要求与Sub过程的过程名、参数相同。
Function必须在End Function之前出现,且必须成对
;8.5.1 定义Function函数过程
2.关于函数体
函数体是一系列用于完成某一功能的代码
包含变量声明和可执行语句
可由顺序、分支、循环三种结构合成。一般格式: [语句块] 函数名=表达式 [语句块]
一般,函数体中应有一句“函数名=表达式”,
表示该表达式的值就作为函数的返回值
该表达式的类型应该与函数的类型说明一致;3.函数定义步骤
同编写过程一样,在“通用”对象代码窗口输入函数首行。
如定义函数过程Max,实现求三个数的最大值:Function Max(a, b, c) Max = a If b Max Then Max = b If c Max Then Max = cEnd Function
以上函数过程的过程名为Max
参数a、b、c
函数体中多次使用了函数名Max,并使用了参数;8.5.2 调用Function函数过程
调用格式: 函数过程名[(实参数列表)]
调用函数往往在可以使用表达式的代码中出现,只要类型相同就可以了。
如对Max函数过程,可以使用:A=Max(1,43,5)
;【例8-4】编程计算。要求计算n!使用函数过程Factorial(n)实现。
;Function Factorial(N) 函数过程,求n! Dim i, T
T = 1
For i = 1 To N
T = T* i
Next
Factorial = T
End Function
Dim M, N
N=inputbox(输入一个数n)
m=Factorial(n)
Document.write(N的阶乘为m);用递归实现求阶乘
递归调用是指在一个过程内直接或间接调用自己。
【例】利用递归调用编写的求n!的函数Factorial(n)。
求n!时,n!=n×(n-1)!,(n-1)!= (n
文档评论(0)