《【教学课件】第5章选择结构程序设计.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第5章选择结构程序设计.ppt(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第5章选择结构程序章选择结构程序设计设计人民邮电出版社21世纪高等学校计算机基础教育系列教材选择结构程序设计选择结构程序设计 If If 结构结构 在某些条件成熟的情况下才能解决下一个问题,在表达的时候就会有“如果就”或者“如果就,否则就”的说法,这些表达方法表示成计算机语言“IfThen”结构或者“If Then Else”结构。单分支结构(If Then 语句)这种结构的语法为:If Then 语句块 End If这种结构的程序流程图为:TF条 件 表 达式语句块开始(start)结束(End)选择结构程序设计选择结构程序设计 这种结构的这种结构的语句形式:语句形式:If Then 语句
2、块语句块1Else 语句块语句块2End IFIF这种结构的这种结构的流程图如下流程图如下图所示:图所示:T F条件表达式语句块1开始结束语句块2双分支结构双分支结构这种结构就这种结构就是人们常说是人们常说的的“如果如果就就,否则就,否则就”的问的问题,这类问题,这类问题转化成计题转化成计算机语言就算机语言就是双分支结是双分支结构构If Then Else 语句语句多分支结构(If Then ElseIf 语句)多分支结果是双分支结构的一种特例,就是在双分支结构的第二个分支中在加上几个分支,达到多重条件的判断。它的语法可以表示如下:If Then 语句块1ElseIf Then 语句块2Els
3、eIf Then 语句块3Else 语句块n+1 End If 这种结构的程序流程图见下页选择结构程序设计选择结构程序设计 选择结构程序设计选择结构程序设计 TF条件表达式条件表达式1语句块1开始开始(start)结束结束(End)F F T条件表达式条件表达式2语句块语句块2 T条件表达式条件表达式n语句块语句块n 语句块n+1If.GotoIf.Goto结构结构Visual Basic提供了一种控制If.goto语句,这种控制语句主要用于程序的出错处理或者是根据条件提前结束程序的操作。这种语句的格式是:If goto 行号/标签行号/标签:当表达式的值为“真”时,程序跳到行号/标签处,继续
4、执行程序段2,否则将就先执行程序段1,然后再执行程序段2。这种结构就相当于单分支的选择结构。选择结构程序设计选择结构程序设计 Private sub form_click()Dim x as integer X=val(inputbox(“请输入一个整数x”)If x=10 goto exits x=x2+2*x+32 print x exits:x=x+100 print xEnd sub嵌套结构在一个If Then Else结构的一个或者几个语句块中包含一个或若干个If Then Else结构的语句称为嵌套结构。这种结构的语法可以表示如下:If Then If Then Else End
5、IfElse If Then Else End IfEnd If选择结构程序设计选择结构程序设计 实际上可以看出,这里只是用一个If Then Else结构代替了前面的单分支结构或双分支结构中的语句块而已。这里要注意的就是其中的关键字的个数的匹配,也就是说一个If一定要和一个End If相匹配,否则程序将会出错。Select case 结构这种结构就是根据我们对于一个事件的不同的选择而使其出现不同的结果。实际上是对多分支结构的另一种表达方式,目的就在于增强程序的可读性,它的理解方法完全和上面所讲述的多分支结构一样,只是在语法上有一定的不同。这种结构的语法结构如下所示,下图是这种结构的程序流程图
6、。Select case 表达式 Case 常量表达式1 语句块1 Case 常量表达式2 语句块2 Case Else 语句块n+1 End select 这种结构的程序流程图见下页选择结构程序设计选择结构程序设计 选择结构程序设计选择结构程序设计 开始开始(start)(start)选择条件选择条件(select case)(select case)表达式表达式常量表达式常量表达式1 1成立,成立,执行语句块执行语句块1 1常量表达式常量表达式2 2成立,成立,执行语句块执行语句块2 2常量表达式常量表达式n+1n+1成立,成立,执行语句块执行语句块n+1n+1结束(结束(EndEnd)E
7、nd selectEnd select 条件函数在Visual Basic中还提供了两个条件函数,这两个函数分别是:IIF函数和Choose函数,用IIF函数代替IF语句,用Choose函数代替select case语句,但是这两个函数只能用于简单的判断场合。1)IIF函数IIF函数的形式:IIF(表达式,条件为真(true)的值,条件为假(false)的值)例如:判断税率的程序可以写成如下:10万元以上扣除15%,10万元以下扣除10%,写成程序就是:TaxRate=IIF(money 10,0.15,0.1)Tax=TaxRate*money求两个数中较小的一个的程序代码:Min=IIF(
8、xy,y,x)选择结构程序设计选择结构程序设计 Choose函数Choose函数的形式:Choose(Nvar,ret1,ret2,)其中:Nvar是一个数值类型的变量,ret1是当Nvar为1时的返回值,ret2是当Nvar为2时的返回值,等等以此类推。例如:可以根据我们输入的数字来判断运算符的种类:Nop=InputBox(“请输入运算符号码”)Op=choose(Nop,“+”,“-”,“*”,“/”,“”)这里当输入1时,op的值为“+”,2时为“-”等等。注意当输入不在1-5之间时,函数将返回一个NULL值;当输入的是一个小数时,系统将先对这个小数取整。然后进行判断运算。选择结构程序
9、设计选择结构程序设计 On-goto语句On-goto类似于select case语句,用来实现多分支的结构控制,可以根据不同的条件从多种处理方案中选择一种方案执行。这种语句的结构是:On 数值表达式 GoTo 行号列表|标签列表该语句的功能是:根据“数值表达式”的值,将其四舍五入处理后得到一个整数,然后根据这个整数的值决定自己转移到第几个行号|标签处继续执行。行号列表|标签列表中的每两个行号|标签之间用逗号隔开。例如:On(x+y)/2 goto 23,12,line2,line5,exits这个语句执行的情况是:当(x+y)/2=1时,程序从标签为23的那一行开始往后执行;当(x+y)/2
10、=2时,程序从标签为12的那一行开始往后执行,以此类推。选择结构程序设计选择结构程序设计 On error goto语句该语句的功能是启动一个错误处理程序并指定该子程序在一个过程中的位置;也可用来禁止一个错误处理程序。如果不使用 On Error 语句,则任何运行时错误都是致命的;也就是说,结果会导致显示错误信息并中止运行。该语句的语法是:On Error GoTo 行号|标签启动错误处理程序,且该例程从必要的 line 参数中指定的 line 开始。line 参数可以是任何行标签或行号。如果发生一个运行时错误,则控件会跳到 line,激活错误处理程序。指定的 line 必须在一个过程中,这个过程与 On Error 语句相同;否则会发生编译时间错误。On Error Resume Next说明当一个运行时错误发生时,控件转到紧接着发生错误的语句之后的语句,并在此继续运行。访问对象时要使用这种形式而不使用 On Error GoToOn Error GoTo 0禁止当前过程中任何已启动的错误处理程序。选择结构程序设计选择结构程序设计 1.关系运算符关系运算符 VB提供的关系运算符有以下6种,如表4-1所示。2.关系表达式关系表达式 关系表达式的格式为表达式表达式1关系运算符表达式关系运算符表达式2关系运算符表达式关系运算符表达式3运算符的优先顺序运算符的优先顺序