- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
子程序与函数过程;子程序过程 (2)
函数过程 (4)
过程之间参数传递 (3)
变量的作用域 (1);定义格式:
[Static][Private|Public]Sub子程序名
([形参列表])
语句组1
[Exit Sub]
语句组2
End Sub ;【实例6.1】交换两个整型变量值的子过程
Private Sub Swap( X As Integer, Y As Integer)
Dim temp As Integer
Temp=X : X=Y : Y=Temp
End Sub
测试:参数的传递过程——值传递和地址传递,用下过程。;;【工具】|【添加过程】;子程序过程的调用格式
Call 过程名[( 实际参数)]
过程名 [ 实际参数 ]
;【实例6.2】试编写一个无参数的sub子过程Formmove( ) ,它的功能是将当前正在运行的窗体移动到屏幕的中央。;Fommove( ) 子过程代码
Public Sub formmove()
Form1.Top = (Screen.Height - Form1.Height) / 2
Form1.Left = (Screen.Width - Form1.Width) / 2
End Sub;移动按钮代码
Private Sub Command1_Click( )
Call Formmove
End sub;函数过程的定义
函数过程的调用 ;函数过程的一般定义格式 ;函数过程的调用格式
变量名 = 函数名( 实际参数 )
注意:
必须有确定值
个数、类型必须与形参一一对应;;Private Function Gcd(m As Integer,
n As Integer)
Dim r As Integer, t As Integer
If m n Then
t = m : m = n : n = t
End If
Do
r = m Mod n
m = n
n = r
Loop While (r 0)
Gcd = m
End Function;【实例6-3】 编写一个函数过程,统计一串字符中某个字符的出现次数,通过调用函数过程实现。;函数过程代码
Public Function statistic(str$, s$) As Integer
Dim k%, i%
k = 0
For i = 1 To Len(str)
If Mid(str, i, 1) = s Then
k = k + 1
End If
Next i
statistic = k
End Function;统计按钮代码
Private Sub cmdstat_Click()
Dim c1$, c2$, m%
c1 = txtin.Text
c2 = txtsearch.Text
m = statistic(c1, c2)
txtcount.Text = m
End Sub;【实例6-4】某班有m名学生,要选派n名学生参加合唱队,计算有多少种选派方法。 ;计算阶乘的函数过程
Public Function factorial(ByVal n As Integer) As Double
Dim i As Integer, t As Double
t = 1
For i = 1 To n
t = t * i
Next i
factorial = t
End Function;计算按钮代码:
Private Sub cmdcount_Click()
Dim m As Integer, n As Integer, c As Double
m = Val(txtstudent.Text)
n = Val(txtneed.Text)
c = factorial(m) / (factorial(n) * factorial(m - n))
lblways.Caption = Str(c)
End Sub;传地址与传值
传值方式
在形参前加关键字ByVal,指定该参数是传值方式例
如:Private Sub w(ByVal n%)
传地址方式
在形参前加关键字ByRef或缺省关键字,则指定该参数是传地址方式。
例如:Private Sub w(ByRef x!,y! )
注意:
按传地址方式传递参数时,要求实参必须是变量名 ;【实例6.5】 编写 交换两个数的子过程,s1用传值方式,s
您可能关注的文档
- 子宫颈癌的预防与治疗.ppt
- 子查询多表连接和系统函数.ppt
- 子情景 发动机加速不良的检修.ppt
- 子情景 发动机油耗高的检修.ppt
- 子痫抽搐护理查房.ppt
- 子程序和函数.ppt
- 子网连接保护专题补充组网分析.ppt
- 子过程与函数过程.ppt
- 孕前优生健康检查的意义.ppt
- 孕妇产后护肤品.ppt
- 化学反应速率与平衡.ppt
- 企业会计信息质量问题及对策【精品发布】.doc
- 免疫学的应用高二上学期生物人教版选择性必修一.pptx
- 高中物理自由落体运动课题研究力学部分+课件+-2023-2024学年高一上学期物理人教版必修第一册.pptx
- 北师大版生物七年级上册 《细胞的基本结构和功能》第2课时CEP课件1.pptx
- Unit 4 Grammar and usage(教学课件)-高中英语牛津译林版(2020)选择性必修第三册.pptx
- 特异性免疫高二上学期生物人教版选择性必修1.pptx
- 期末复习课件专题9+物体的浮沉条件及应用(2)++2023-2024学年人教版八年级物理下册.pptx
- 其他植物激素高二上学期生物人教版选择性必修1.pptx
- 三大费用核算节税技巧【会计实务操作教程】.pptx
最近下载
- 《高等数学(下)》(合肥工业大学)中国大学MOOC(慕课)章节测验试题(答案).pdf
- 四川省绵阳南山中学2022-2023学年高一下学期6月月考地理试卷(含答案).docx VIP
- 2021年陕西省中考物理真题试卷(含答案解析).doc
- 人教版六年级数学上册第一单元测试题(有答案).doc
- NACE-CIP2-001 V8.02(有道文档翻译结果).docx VIP
- 中等职业学校教师教学能力赛项评分指标 .pdf
- 永州市第一中学2022-2023学年高一下学期3月月考历史试卷(含答案).docx VIP
- 中国汽车基础软件发展白皮书4.0.pdf
- 开放系统11879《小学语文教学研究》期末机考真题及答案(第101套).pdf
- 16pf测试报告文档.pdf
文档评论(0)