第3章 程序流程控制.ppt

上传人:创****公 文档编号:2385839 上传时间:2020-03-14 格式:PPT 页数:57 大小:307KB
返回 下载 相关 举报
第3章 程序流程控制.ppt_第1页
第1页 / 共57页
第3章 程序流程控制.ppt_第2页
第2页 / 共57页
点击查看更多>>
资源描述

《第3章 程序流程控制.ppt》由会员分享,可在线阅读,更多相关《第3章 程序流程控制.ppt(57页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第3章程序流程控制,VisualBasic6.0程序设计,第3章程序流程控制,3.1VB程序设计中的常用语句3.2分支结构3.3循环结构3.4Goto语句3.5程序调试,3.1VB程序设计中的常用语句,计算机程序的执行控制流程有3种基本结构:顺序结构分支结构循环结构,顺序结构:按程序语句的顺序依次地执行。顺序结构主要语句:赋值语句、输入、输出语句和暂停语句。,顺序结构流程图,程序语句1,程序语句2,赋值语句(1)赋值作用:把一个表达式的值赋给一个变量或控件的一个属性。,例:s=100k=k+1st$=“abcd”command1.caption=“确定”,3.1VB程序设计中的常用语句,(2)

2、赋值与逻辑等号等号既可作为赋值号,也可表示等价关系。,(3)赋值相容VB对某些数据类型提供了自动转换机制,强制变量转换为适当的数据类型。,例:dimintx%,stry$stry=“100.23”intx=20?intx+stry,结果为:120.23,3.1VB程序设计中的常用语句,例:Dimx%,y!y=100.23x=yPrintx,结果为:100,将实型数据赋给整型变量会出现什么样的结果呢?,VB从键盘输入数据提供了inputbox和msgbox两个函数。,1.Inputbox函数格式:inputbox(提示字符串,标题字符串,缺省值,x坐标值,y坐标值)提示字符串需多行显示时,可在每

3、行行尾使用回车符chr(13)和换行符chr(10)或者使用VbCrlf换行;,3.1VB程序设计中的常用语句,数据输入,要求如下:(1)提示信息为:请输入年龄(2)标题为:年龄数据输入(3)默认值为:20(4)x坐标:2500(5)y坐标:3500,3.1VB程序设计中的常用语句,inputbox命令练习:,【例3-1】输入长方体长、宽、高,计算并输出其体积。PrivateSubCommand1_Click()DimaAsSingle长DimbAsSingle宽DimcAsSingle高DimvAsDouble体积a=InputBox(长方体的长:)b=InputBox(长方体的宽:)c=I

4、nputBox(长方体的高:)v=a*b*cPrint体积为:,vEndSub,3.1VB程序设计中的常用语句,2.Msgbox函数格式:msgbox(提示字符串,按钮设置值,标题字符串)作用:用于接收用户简单的选择信息。Msgbox函数在对话框中显示消息,等待用户单击按钮,并且返回一个整型值,告诉程序用户单击了哪个按钮。,3.1VB程序设计中的常用语句,Msgbox函数练习要求如下:(1)提示信息为:函数练习(2)有两个按钮:确定和取消(3)显示图标为:!(4)第一个按钮为默认值(5)标题为:提示信息(6)如果用户按下确定屏显:你好如果用户按下取消屏显:再见,3.1VB程序设计中的常用语句,

5、a=MsgBox(函数练习,1+48+0,提示信息)Ifa=1ThenPrint你好ElsePrint再见,【例3-2】输入一个正数,并由用户决定是否求其平方根。PrivateSubCommand1_Click()DimaAsStringDimfhasIntegera=Val(InputBox(请输入一个正数)fh=MsgBox(对+a+求平方根吗?,vbYesNo+vbQuestion+vbDefaultButton1)Iffh=vbYesThenPrintSqr(a)EndIfEndSub,3.1VB程序设计中的常用语句,3.MsgBox消息框语句如果不需要返回值,MsgBox可写成语句形

6、式,格式如下:MsgBox提示字符串,按钮设置值,标题字符串该语句用于简单的信息,例如:MsgBox数据输入错误,请重新输入!,错误提示,3.1VB程序设计中的常用语句,格式:对象Print输出项列表,(1)程序中往往使用无输出项列表的Print换行;(2)对象可以是窗体、图片框、打印机(Printer)等。若省略“对象.”则默认前窗体上输出;(3)可在VB的立即窗口中使用Print;(4)输出项列表由输出项和分隔符构成,分隔符可以是空格、“;”或“,”。采用空格或“;”;(5)输出项的组成:Spc(n)/Tab(n)表达式Spc(n)表示在表达式前输出n个空格;Tab(n)表示表达式在第n列

7、上输出无参数,将插入点定位在下一个打印区的起始位置。(6)Print若以“,”或“;”结束,表示程序中的下一个Print方法将从当前行的当前位置继续输出,否则将换行输出。,3.1VB程序设计中的常用语句,输出数据的print方法,Print应用举例:Form1.Print沈阳农业大学Picture1.Print沈阳农业大学Print沈阳农业大学Printer.print“沈阳农业大学”,3.1VB程序设计中的常用语句,例:Print沈阳;Tab(20);农大Print沈阳;Tab;农大Print沈阳;Spc(10);农大“Print沈阳,农大Print沈阳;农大,【例3-3】输入长方体的长、宽

8、、高,求其体积。请对比三个Print语句的输出效果(输出结果略)。PrivateSubCommand1_Click()Dima!,b!,c!,v#a=InputBox(长方体的长:)b=InputBox(长方体的宽:)c=InputBox(长方体的高:)v=a*b*cPrint长:,a,宽:,b,高:,c,的长方体的体积为:,vPrint长:;a,宽:;b,高:;c,的长方体的体积为:;vPrint长:;a;宽:;b;高:;c;的长方体的体积为:;vEndSub,3.1VB程序设计中的常用语句,Print配合格式函数Format,按指定的格式输出数据。函数格式为:Format(表达式,格式字符

9、串),【例3-4】用窗体事件过程试验数据的格式化输出。,privateSubForm_Click()PrintFormat(1234.6,000,000.00)PrintFormat(1234.678,#,#.#)PrintFormat(1234.6,#,#0.00)PrintFormat(1234.6,$#,#0.00)PrintFormat(1234.6,-#,#0.00)PrintFormat(0.123,0.00%)PrintFormat(1234.6,0.00E+00)PrintFormat(0.1234567,0.00E-00)EndSub,3.1VB程序设计中的常用语句,注释语句

10、的前缀是一个单撇号或rem,暂停语句:stop,结束语句:end,3.1VB程序设计中的常用语句,注释、暂停和程序结束,格式:If条件then语句序列else语句序列要求:在一行内书写完毕,(255个字符限度),3.2分支结构,单行结构条件语句,【例3-5】输入一个数,若其大于等于0,则输出其平方根。PrivateSubCommand1_Click()Dima!a=Val(InputBox(输入一个数)Ifa=0ThenPrintayEndSub,3.2分支结构,课堂练习:从键盘上输入一个0-6的整数,然后在文本框中显示用英文表示的星期几,如输入0,显示“sunday”,输入1,显示“mond

11、ay”等。,3.2分支结构,【例3-11】判断输入字符是数字字符、字母还是其它字符。PrivateSubCommand1_Click()DimStrCAsString*1StrC=InputBox(输入一个字符)SelectCaseStrCCaseaToz,AToZMsgBox字母!Case0To9MsgBox数字字符!CaseElseMsgBox其它字符!EndSelectEndSub,3.2分支结构,课堂练习:用selectcase语句实现如下要求。,计算Y的值:当X0时,Y=2*X当0x2时,Y=X*2当2x3时,Y=1-X当3x6时,Y=(X+5)*2当x6时,Y=X*(X+5),3.

12、2分支结构,Dimx!,y!x=InputBox(x=)SelectCasexCaseIs0y=2*xCaseIs2y=x2CaseIs3y=1-xCaseIs6y=(x+5)2CaseElsey=x*(x+5)EndSelectPrinty,格式:While循环条件语句序列Wend,3.3循环结构,whilewend语句,条件?,YES,循环体,Wend的后续语句,NO,循环结构流程图,读程序写出结果。Dimx%X=1WHILEX50?XX=X*3wend,3.3循环结构,13927,3.3循环结构,读程序写结果:Dimy%Y=0whiley=40Y=y+1Ify/7=int(y/7)the

13、n?ywend,3.3循环结构,714212835,3.3循环结构,【例3-12】输出1100之间的所有整数。程序如下:PrivateSubCommand1_Click()Dimi%i=1Whilei=100Printii=i+1WendEndSub,【例3-13】求1100之间所有整数之和。【例3-14】求n!,即求123n。,3.3循环结构,【例3-15】从键盘输入一串字符,分别统计其中的数字字符、字母和其它字符的个数(采用%作为输入字符的结束标志),DimstrCAsString*1DimintS%,intN%,intQ%intS=0:intN=0:intQ=0strC=InputBox

14、(输入一个字符)WhilestrC%SelectCasestrCCaseaToz,AToZintS=intS+1Case0To9intN=intN+1CaseElseintQ=intQ+1EndSelectstrC=InputBox(输入一个字符)Wend,Print输入字母字符:;intS;个Print输入数字字符:;intN;个Print输入其它字符:;intQ;个,3.3循环结构,1.先判断条件形式的Doloop语句,格式:dowhile|until循环条件语句序列loop,3.3循环结构,Doloop语句,【例3-16】求某个数的所有约数。Dimn%,i%n=Val(InputBox(

15、请输入一个数)i=1Printn;的约数有:;DoWhilei100Printb=;bEndSub,比较如下两个程序。,3.3循环结构,fornext语句通常用于循环次数已知的程序结构中。,格式:for变量=初始值to终值step步长语句序列exitfor语句序列Next变量,3.3循环结构,Fornext语句,【例3-18】用for循环求N的阶乘。,Dimi%,n%,ss,小结:在VB的各种循环语句中,DoWhileLoop和For最为常用。DoWhileLoop的功能很强,能完成各种各样的循环操作;而For语句用于循环次数已知的计数循环,方便又简洁。,3.3循环结构,无条件形式:Exitd

16、oExitfor,条件形式:If条件thenexitdoIf条件thenexitfor,3.3循环结构,退出循环,【例3-19】判断数n是否为素数(质数)。,Dimi%,n%n=Val(InputBox(请输入一个数)Fori=2Ton-1IfnModi=0ThenExitForEndIfNextIfi=nThenPrintn;是素数ElsePrintn;不是素数EndIf,3.3循环结构,分析运行结果:Dimi,jFori=1to3forj=5to6Printi,jNextjNexti,3.3循环结构,嵌套循环,【例3-20】在窗体上输出以下形式的星星阵列:*,3.3循环结构,3.4Goto

17、语句,语句格式:GoTo说明:(1)GoTo语句无条件转移到标号或行号指定的程序行。GoTo本身是无条件转移语句,但在实际应用时,都是要求在某一条件下,才发生转移,所以GoTo语句通常与条件语句结合使用;(2)标号是一个字符序列,置于转移的目的语句的前面,起标识作用。转移的目的语句的格式应为:标号:(3)GoTo语句只能转移到同一过程内的标号或行号处。另外使用GoTo语句会造成程序结构不清晰、可读性差,所以在程序设计中应尽量少用或不用GoTo语句。,3.5程序调试,查找和修改错误的过程称为程序调试。1错误类型VB的错误可分为语法错误、运行错误和逻辑错误3种。,2.调试工具VB提供了一系列调试工具,包括设置断点、逐语句执行、逐过程执行和调试窗口。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文献 > 管理制度

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁