VB过程与函数课件

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

复习与回顾2、For语句一定可以改成Do语句,反之不一定成立。1、For语句与Do语句的区别(1)for语句:事先可知循环次数,通过次数控制循环;循环体先执行后判断次数完否,至少执行一次循环;控制循环次数的循环变量的值会按步长自动变化,循环会自动结束。(2)do语句:事先可不知循环次数,通过条件控制循环;条件先判断后执行循环体,循环次数可以为0次;控制循环条件的主要变量的值必须在循环体中改变,并要最终能终止循环。•(1)、有以下程序段:•Fori=1To3•Forj=1To5•s=i*j•Nextj•Nexti•则语句s=i*j的执行次数是()•(A)15(B)16(C)17(D)183、程序阅读A•(2)、有如下程序段:•x=1•y=0•DoWhilex10•x=x*2•y=y+1•Loop•该程序段运行后,y的值为()(A)0(B)2(C)3(D)43、程序阅读D4.4过程与函数一、概念:VB应用程序是按模块化的方式组成的,每个模块完成一部分任务。模块分成两种:1.过程2.函数过程:强调的是动作,比如显示一个对话框MsgBox你输入东西了,哈哈“函数:强调的是值的计算,如求算术平方根,sqr(5)过程:将程序划分为一个个较小的逻辑单元,每个逻辑单元构成一个过程。过程中的代码被重复的调用。过程分为:事件处理过程和通用过程。二、过程的分类:$4.4过程与函数模块分成两种:1.过程2.函数•过程:强调的是动作,比如显示一个对话框MsgBox你输入东西了,哈哈“•函数:强调的是值的计算,如求算术平方根,sqr(5)二、过程的分类:(1)事件处理过程:当对象X上发生某个事件Y时,需要执行一段程序来响应这个事件。常用格式sub对象名_事件的标准名(参数表)语句块endsub如:PrivateSubCommand1_Click()a=InputBox(请输入你的姓名:)MsgBox(a+我知道你了,哈哈!)EndSub事件处理过程名(2)通用过程(教材省略,不作要求)三、事件处理过程1、例:文本框1,内容改变事件PrivateSubText1_Change()MsgBox你输入东西了,哈哈“EndSub2、事件处理过程名=对象名_事件的标准名对象名:文本框(Text)、命令按钮(Command)、标签(label)事件的标准名单击(click)、双击(Dblclick)、改变内容(change)、键盘按下(KeyPress)(参见教材P84表4.4.1)4、事件处理过程以sub开始,并且以endsub结束四、过程的调用•PrivateSubCommand1_Click()•DimaAsString•Label2.Caption=(请输入你的姓名:)•a=Text2.Text•IfaThen•Picture1.Print(a+我知道你了,哈哈!)•EndIf•EndSub•PrivateSubLabel1_Dblclick()•Picture1.Print你双击我了,哈哈!•Command1_Click•EndSub•PrivateSubText1_Change()•Picture1.Print你输入东西了,哈哈•Command1_Click•EndSub演示“函数与过程调用工程中的过程调用(Form1)”五、函数函数也是一个程序模块,不同之处是函数执行完后会返回一个函数值。函数的函数值是通过函数名返回的五、函数•(一)函数分为标准函数和自定义函数1、标准函数:(1)、常用数学函数:Abs(x)Int(x)Sqr(x)Exp(x)Log(x)Sin(x)Cos(x)Tan(x)(2)、类型转化函数和字符串函数:Asc(x)asc(“A”)=65Chr(x)chr(48)=“0”Val(x)val(“170”)=170Str(x)str(170)=“170”Len(x)len(“asd”)=3Mid(x,n,k)如:mid(“abcde”,3,2)=“cd”Fix(x)fix(2.56)=22、自定义函数自定义函数的格式:Function函数名(参数表)AS类型名语句块(其中至少有一个语句是:函数名=表达式)EndFunction例:Functionou(a)AsStringIfaMod2=0Thenou=该数为偶数!Elseou=该数为奇数!EndIfEndFunction这样表达式的结果才能作为函数的返回值PrivateSubText1_Change()DimaAsIntegera=Val(Text1.Text)Label2.Caption=ou(a)EndSubFunctionou(a)AsStringIfaMod2=0Thenou=该数为偶数!Elseou=该数为奇数!EndIfEndFunction(二)、调用(使用)函数应用实例:判断一个数是否为偶数演示“函数与过程调用工程中的函数调用(Form2)”应用实例:在文本框text1和text2中输入两个整数,单击按钮对象command1,在标签label1中显示这两个数的较大数。Founctionbig(x,y)asintegerifxythenbig=xelsebig=yEndifEndFounctionprivatesubcommand1_click()dima1,a2asintegera1=val(text1.text)a2=val(text1.text)Label1.caption=Big(a1,a2)分析:自定义函数big用于求两个整数中的较大数由于输入的整数是a1,a2。即调用函数时对应的参数为a1,a2,而不是x,y,因此答案为Big(a1,a2)六、模块化程序设计的方法1、把判断A是否为偶数这样的一个过程从整个程序中分离出来,成为一个独立的模块,(模块可以是函数,也可以是过程),这是一种模块化程序设计方法。2、VB应用程序是按模块化的方式组成的,一个程序模块是程序的一部分,每个模块负责解决整个应用问题的一部分。3、使用这样的方法的好处是:①、使程序设计结构简单化②、过程规模小,容易调用和维护③、过程可以被反复使用,从而避免了重复编码七、总结:•Vb是一种基于模块化的设计方法,函数与过程是模块的具体实现。•调用过程相当于执行了一条语句(过程名),强调的是动作,它不返回值。调用函数时,强调的是表达式中值的计算,返回值由函数名带回。•PublicFunctionf(m,n)AsInteger•DoWhilemn•DoWhilemn•m=m-n•Loop•DoWhilenm•n=n-m•Loop•Loop•f=m•EndFunctionPrivateSubCommand1_Click()Text1.Text=Str(f(24,18))EndSub运行结果:6函数f的功能是:求最大公约数演示:“函数与过程调用工程中的函数调用阅读练习(Form3,Form4)”

1 / 17
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功