第六章过程5学时内容摘要:
832iibt调用: Sub Command1_Click() Dim a%(1 To 5), b%(3 To 8) … t1 = tim(a()) t2 = tim(b()) Print t1, t2 End Sub 使用过程注意事项: 1. 确定自定义的过程是子过程还是函数过程 函数过程名有值,子过程名无值。 2.过程中形参的个数和传递方式的确定 过程中参数的作用是实现过程与调用者的数据通信。 (1)从主调程序获得初值,值传递。 (2)将结果返回给主调程序,地址传递。 3. 实参与形参结合时对应问题 个数、类型、位置、次序一一对应。 形参是值传递,对应实参可以是表达式、常量、数组元素。 形参是地址传递,对应实参只能是简单变量。 数组、记录类型、对象只能是地址传递。 实验 1. 函数过程,形参一个,值传递对所判断的数字;函数名是否为回文数。 Function IsH(ByVal ss As String) As Boolean 2. 子过程,形参两个,值传递对所判断的数字,地址传递是否位回文数。 Sub hui(ByVal ss As String, Tag As Boolean) 实验 DeleStr(s1, s2)形参的确定 s1,要处理的字符串,从主调程序得初值,删除子串后结果在 S1中,所以地址传递。 s2删除的子串,值传递。 实验 MaxLength(s)形参的确定 S要处理的字符串,值传递。 MaxLength函数名,最长的单词长度。 四、 变量、过程的作用域 作用域: 变量、过程随所处的位置不同,可被访问的范围。 窗体 /模块级 :加 Private关键字的过程,只能被定义的窗体或模块中的过程调用。 全局级 :加 Public关键字(缺省)的过程,可供该应用程序的所有 窗体和所有标准模块中的过程调用。 2. 变量的作用域 局部变量 :在过程内用声明的变量,只能在本过程中使用。 窗体 /模块级变量 :在“通用声明”段中用 Dim语句或用 Private语句声明的变量 ,可被本窗体 /模块的任何过程访问。 全局变量 :在 “通用声明”段中用 Public语句声明的变量,可被本应用程序的任何过程或函数访问。 例如在下面一个标准模块文件中不同级的变量声明: Public Pa As integer 39。 全局变量 Private Mb As string *10 39。 窗体 /模块级变量 Sub F1( ) Dim Fa As integer 39。 局部变量 … End Sub Sub F2( ) Dim Fb As Single 39。 局部变量 … End Sub 若在不同级声明相同的变量名 ,系统按局部、窗体 /模块、全局次序访问如 : Public Temp As integer 39。 全局变量 Sub Form_Load() Dim Temp As Integer 39。 局部变量 Temp=10 39。 访问局部变量 =20 39。 访问全局变量必须加窗体名 Print , Temp 39。 显示 20 10 End Sub 3. 静态变量 局部变量声明: Dim声明 ,随过程的调用而分配存贮单元,变量的初始化;过程体结束,变量的内容自动消失,存贮单元释放。 Static声明 ,每次调用过程,变量保持原来的值。 声明形式 : Static 变量名 [AS 类型 ] Static Function 函数过程名 ([参数列表 ]) [As 类型 ] Static Sub 子过程名 [(参数列表 )] 过程名前加 Static,表示该过程内的局部变量都是静态变量。 例 Private Sub Form_Click() Dim i% , isum% For i = 1 To 5 isum = sum(i) Print isum, Next i End Sub Private Function sum(n As Integer) Dim j As Integer j = j + n sum = j End Function Static j As Integer,结果。 1, 2, 3, 4, 5 Sub f1(x) … x=f2(xx)*3… End Sub Sub Command1_Click() …… Call f1(y) End Sub Function f2(x) …… f2=f3(x)+3 End Sub Function f3(x) …… f3=x*x End Sub Sub f1(x) … Call f1(y) End Sub 过程。第六章过程5学时
本资源仅提供20页预览,下载后可查看全文
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。
相关推荐
第六章运行时刻环境序61源语言中的一些问题62存储组织
名字的绑定 说明的作用域 活动的生存期 18 提出的问题 编译程序组织存储分配所采用策略和方法主要取决于对源程序中下面的问题的回答。 1.过程可以是递归的吗。 2.当控制从过程的一次活动返回时,局部 名的值将发生什么 变化 ? 3.一个过程可以访问非局部名吗。 4.当调用过程时参数是怎样传递的。 5.过程可以作为参数被传递吗。 6.过程可以作为结果被返回吗。 7.
第六章面向对象的设计
Assembler 科学计算 FORTRAN ALGOL 、 BASIC 、APL 系统 Assembler Forth 人工智能 LISP SNOBOL 现代 商业 COBOL、 C++、 Java、 电子表格 C、 PL/1 科学计算 FORTRAN、 C、 C++ Java BASIC 系统 C、 C++、 Java Ada、 Modula 人工智能 LISP、 Prolog 第九章
第六章设计阶段工程造价管理
分的方法计算。 如果确定用户意见的权重是 55%、设计人员的意见占 30%、施工人员的意见占 15%,具体分值计算见下表。 设计方案评价和优化 功 能 用户评分 设计人员评分 施工人员评分 功能权重系数 K=(Fai 55%+ Fbi 30% +Fci 15%) /100 得 分 Fai Fai 55% 得 分 Fbi Fbi 30% 得 分 Fci Fci 15% 适 用 平面布置 F1 40