分支结构程序设计分支结构程序设计制作者:剑阁县鹤龄职业中学制作者:剑阁县鹤龄职业中学李永峰李永峰结构化程序设计结构化程序设计顺序结构分支结构单分支结构双分支结构多分支构循环结构学习目标学习目标了解三种分支结构的思想了解三种分支结构的思想(知识目标)(知识目标)掌握三种分支结构的语句格式及其功能掌握三种分支结构的语句格式及其功能((知识目标知识目标))理解三种分支结构的程序流程理解三种分支结构的程序流程(知识目(知识目标)标)能熟练利用三种分支结构进行程序设计能熟练利用三种分支结构进行程序设计(技能目标)(技能目标)培养学生良好的思维能力培养学生良好的思维能力(德育目标)(德育目标)学习重难点学习重难点双分支结构与多分支结构双分支结构与多分支结构程序的编写程序的编写双分支结构与多分支结构双分支结构与多分支结构程序的阅读程序的阅读单分支结构单分支结构格式及程序流程:格式及程序流程:if><<语句组语句组>>endifendif求如下分段函数的值:求如下分段函数的值:3x+2(x>=0)Y=3x-2(x<0)用一次单分支结构完成此任务用一次单分支结构完成此任务Input“Input“请从键盘上输入请从键盘上输入xx的值:”的值:”toxtoxY=3*x+2Y=3*x+2Ifx<0Ifx<0y=3*x-2y=3*x-2EndifEndif?“?“该分段函数的解为:”,该分段函数的解为:”,yy用两次单分支结构完成此用两次单分支结构完成此任务任务Input“Input“请从键盘上输入请从键盘上输入xx的值:”的值:”toxtoxIfx>=0Ifx>=0Y=3*x+2Y=3*x+2EndifEndifIfx<0Ifx<0y=3*x-2y=3*x-2EndifEndif?“?“该分段函数的值为:”,该分段函数的值为:”,yy双分支结构格式及程序流程:格式及程序流程:If><<语名组语名组1>1>ElseElse<<语句组语句组2>2>EndifEndif下条件?.T..F.语句组1语句组2说明:说明:1、<条件>可以是各种有效的逻辑表达式。2、当<条件>为真时,执行<语名组1>命令组,否则执行<语句组2>命令组,<语名组1>和<语句组2>两个命令组只能执行其中之一。3、双分支结构是可以嵌套的,但应注意不能交叉且IF与ENDIF必须成对出现。双分支结构控制双分支结构控制注意:注意:IF…ELSE…ENDIF语句是可以嵌套的,但应注意不能交叉且IF与ENDIF必须成对出现。(1)IF…………IF…………ENDIF……ENDIF×(1)IF…………IF…………ENDIF……ENDIF用双分支结构编程求分段用双分支结构编程求分段函数的值函数的值Input“Input“请从键盘上输入请从键盘上输入xx的值:”的值:”toxtoxIfx<0Ifx<0y=3*x-2y=3*x-2ElseElseY=3*x+2Y=3*x+2EndifEndif?“?“该分段函数的值为:”,该分段函数的值为:”,yy多分支结构多分支结构格式及程序流程:DocaseDocaseCase1><<语名组语名组1>1>Case2><<语句组语句组2>2>…………Casen><<语句组语句组n>n>[otherwise[otherwise<<语句组语句组>]>]EndcaseEndcase判断每一个CASE后的条件表达式的值是否为真,如找到某个条件为真,则执行其后的命令组所有的条件均为假时,执行该命令组(可省略)多分支结构程序流控制多分支结构程序流控制注意:注意:(1)DOCASE与ENDCASE应成对出现。(2)DOCASE与第一个CASE语句之间不能有其它语句。(3)DOCASE语句也可以嵌套,内层的DOCASE语句可以作为外层DOCASE语句中某一个命令组的语句序列,但内外层之间不能发生交叉。(4)当CASE中不止一个条件为真时,仅执行第一个条件为真的语句后的命令组。(5)DOCASE语句也可以与IF语句或循环语句嵌套,其嵌套的原则与(3)相同。思考:用DOCASE语句完成求学生成绩等级,(90以上为“优秀”;80-90为“良好”;60-80为“及格”;60以下为“不及格”)。示例:在xscj.dbf中查找用户指定的学号,并并显示该学生第一学期数学成绩的等级。其中(数学≥90为优秀;80≤数学<90为良好;60≤数学<80为及格;60分以下为不及格)UsexscjCleaAccept”请输入查询的学号:”toxhLocatefor学号==xhIffound()docasecase数学>=90wait”优生!”windowtimeout1case数学>=80wait”良好!”windowtimeout1case...