《结构化程序设计(分支结构)(教育精品).ppt》由会员分享,可在线阅读,更多相关《结构化程序设计(分支结构)(教育精品).ppt(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、分支结构程序设计分支结构程序设计制作者:剑阁县鹤龄职业中学制作者:剑阁县鹤龄职业中学 李永峰李永峰结构化程序设计结构化程序设计顺序结构分支结构单分支结构双分支结构多分支构循环结构学习目标学习目标了解三种分支结构的思想了解三种分支结构的思想(知识目标)(知识目标)(知识目标)(知识目标)掌掌握握三三种种分分支支结结构构的的语语句句格格式式及及其其功功能能(知识目标知识目标知识目标知识目标)理解三种分支结构的程序流程理解三种分支结构的程序流程(知识目标)(知识目标)(知识目标)(知识目标)能能熟熟练练利利用用三三种种分分支支结结构构进进行行程程序序设设计计(技能目标)(技能目标)(技能目标)(技能
2、目标)培养学生良好的思维能力培养学生良好的思维能力(德育目标)(德育目标)(德育目标)(德育目标)学习重难点学习重难点vv双分支结构与多分支结构双分支结构与多分支结构程序的编写程序的编写vv双分支结构与多分支结构双分支结构与多分支结构程序的阅读程序的阅读单分支结构单分支结构格式及程序流程:格式及程序流程:if endif求求如下分段函数的值:如下分段函数的值:3x+2(x=0)Y=3x-2(x0)用一次单分支结构完成此任务用一次单分支结构完成此任务Input“Input“请从键盘上输入请从键盘上输入请从键盘上输入请从键盘上输入x x的值:的值:的值:的值:”to xto xY=3*x+2Y=3
3、*x+2If x0If x=0If x=0Y=3*x+2Y=3*x+2EndifEndifIf x0If x0 y=3*x-2 y=3*x-2EndifEndif?“?“该分段函数的值为:该分段函数的值为:该分段函数的值为:该分段函数的值为:”,y y双分支结构双分支结构格式及程序流程:格式及程序流程:格式及程序流程:格式及程序流程:IfIf 1ElseElse 2EndifEndif 下 条件?.T.F.语句组1 语句组2 说明:说明:说明:说明:1、可以是各种有效的逻辑表达式。2、当为真时,执行命令组,否则执行命令组,和两个命令组只能执行其中之一。3、双分支结构是可以嵌套的,但应注意不能交
4、叉且IF与ENDIF必须成对出现。双分支结构控制双分支结构控制注意:注意:注意:注意:IFELSEENDIF语句是可以嵌套的,语句是可以嵌套的,但应但应注意不能交叉且注意不能交叉且IF与与ENDIF必须成对出现。必须成对出现。(1)IF IF ENDIF ENDIF(1)IF IF ENDIF ENDIF用双分支结构编程求分段用双分支结构编程求分段函数的值函数的值Input“Input“请从键盘上输入请从键盘上输入请从键盘上输入请从键盘上输入x x的值:的值:的值:的值:”to xto xIf x0If x0 y=3*x-2 y=3*x-2ElseElseY=3*x+2Y=3*x+2Endif
5、Endif?“?“该分段函数的值为:该分段函数的值为:该分段函数的值为:该分段函数的值为:”,y y多分支结构多分支结构格式及程序流程:格式及程序流程:Do caseDo caseCase Case 1 1Case Case 2 Case Case n notherwise otherwise EndcaseEndcase判断每一个CASE后的条件表达式的值是否为真,如找到某个条件为真,则执行其后的命令组所有的条件均为假时,执行该命令组(可省略)多分支结构程序流控制多分支结构程序流控制 注意:注意:(1)DO CASE与ENDCASE 应成对出现。(2)DO CASE 与第一个CASE语句之间
6、不能有其它语句。(3)DO CASE 语句也可以嵌套,内层的DO CASE 语句可以作为外层DO CASE 语句中某一个命令组的语句序列,但内外层之间不能发生交叉。(4)当CASE中不止一个条件为真时,仅执行第一个条件为真的语句后的命令组。(5)DO CASE语句也可以与IF语句或循环语句嵌套,其嵌套的原则与(3)相同。思考:用DO CASE语句完成求学生成绩等级,(90以上为“优秀”;80-90为“良好”;60-80为“及格”;60以下为“不及格”)。示示例例:在在xscj.dbf中中查查找找用用户户指指定定的的学学号号,并并并并显显示示该该学学生生第第一一学学期期数数学学成成绩绩的的等等级
7、级。其其中中(数数学学90为为优优秀秀;80数数学学90为为良良好好;60数学数学=90 wait”优生!优生!”window timeout 1 case 数学数学=80 wait”良好!良好!”window timeout 1 case 数学数学=60 wait”及格!及格!”window timeout 1 otherwise wait”及格!及格!”window timeout 1 endcaseElse wait”无此学号学生!无此学号学生!”EndifUse 双分支中嵌套了多分支双分支中嵌套了多分支 3x+2(x0)Y=3(x=0)3x-2(x0 case x0 Y=3*x+2 Y=3*x+2 case x0 case xb if ca c=a+b else c=a-b endifEndif?c结果为:结果为:结果为:结果为:3030作业作业求方程求方程ax2+bx+c=0的解,的解,a,b,c均从键盘上接收,选择用分支结均从键盘上接收,选择用分支结构编程实现。如果无实根,则显构编程实现。如果无实根,则显示示“此方程无实根!此方程无实根!”