- 4
- 0
- 约2.61千字
- 约 20页
- 2019-04-18 发布于浙江
- 举报
第四章 过程与函数 对于某些多次反复执行的程序段,我们可以将它定义成子程序。 子程序分为过程和函数。 定义 在代码窗口中直接定义子过程形式如下 : [Public/Private] sub 子程序名[(参数列表)] ????? 语句 ????? [Exit Sub] ????? 语句 ??End Sub 函数过程形式如下 : [Public/Private] Function 函数名([参数列表]) [As 类型]? ????? 语句 ????? 函数名=返回值 ???? ?[Exit Function] ??????语句??? ??????函数名=返回值 ??? End Function 形参列表:参数1,参数2,…… 参数定义: [byval] 变量名 as 数据类型 调用 子程序名[参数列表] /Call 子程序名[(参数列表)] 变量名 = 函数名([参数列表]) 例5.1 编一交换两个数的过程。 参数传递 Private Sub Form_Click() Dim a As Integer, b As Integer a = 10 : b = 20 Print 原值:; a1=; a, b1=; b call jiaohuan(a, b) Print 交换后:; a1=; a, b1=; b End Sub 函数的定义和调用 private function jch ( n as integer) dim f as integer,I as integer f=1 for i=1 to n f=f*i next i jch=f end function 过程的作用域 (1) 窗体中的过程 private 子程序只能在本窗体中调用 public 子程序可以在其它窗体中应用,但调用方式为 窗体名.过程名 (2) 标准模块中的过程 public 可以在任意窗体和模块中使用 递归 用自身的结构来描述自身称为“递归”。递归总有一个“结束条件”,此结束条件称为“边界条件”。 递归 s(5)=s(4)+2 s(5)=18 s(4)=s(3)+2 s(4)=16 s(3)=s(2)+2 s(3)=14 s(2)=s(1)+2 s(2)=12 s(1)=10 Li:阶乘 5!=4!*5??????????????? 递推 ??? ? 4!=3!*4 ??????? 3!=2!*3 ??????? ? 2!=1!*2 ??????????? 1!=1?????? 边界条件 ??????????? 2!=1*2=2?? 回推 ??????? 3!=2*3=6 ??? ? 4!=6*4=24 5!=24*5=120 代码如下: Private Function fac(n as integer) ??if n=1 then ?? fac=1 ? else ??? fac=n*fac(n-1) ? end if End Function 菲波那契数列 前两项为1,从第三项开始,其值为它前面两项的和。 Private Function fibo(n As Integer) If n = 1 Or n = 2 Then fibo = 1 Else fibo = fibo(n - 1) + fibo(n - 2) End If End Function 代码如下: Private Sub Command1_Click() Dim n As Integer, i As Integer, k As Integer Picture1.cls n = Val(Text1.Text) For i = 1 To n Picture1.Print fibo(i); ; k = k + 1 If k = 5 Then k = 0 Picture1.Print End If Next I End Sub 常用算法举例 求素数 选择法排序 冒泡法排序 顺序查找 第一次从未排好序的数组中找出最小(或最大)的,放在第一个位置;第二次从后面的n-1个数中找出最小(或最大)的,放在第二个位置; …… 查找 顺序查找即将关键字与数组中的元素
您可能关注的文档
最近下载
- 公共营养师四级试题【含答案】.docx VIP
- 维修Switch+中文版教程.pdf VIP
- 统编人教部编版小学六年级下册道德与法治第一单元教学案.docx VIP
- IPC-6012F-CN-中文版 2024 TOC 刚性印制板的鉴定及性能规范.pdf VIP
- 2025年寒假作业七年级生物北师大版答案.pdf VIP
- impella for doctors左心辅助知识讲座.pptx VIP
- 成人患者医用粘胶相关性皮肤损伤的预防及护理(1).pptx VIP
- 安徽省高新技术产品国际竞争力:现状、挑战与提升策略.docx VIP
- PENTAX宾得 645NII相机手册.pdf VIP
- SY∕T 6565-2018 石油天然气开发注二氧化碳安全规范.pdf
原创力文档

文档评论(0)