
单元12 分支结构 复习旧课 1、程序的编辑、保存和运行。 2、键盘输入语句: 键盘输入字符串:accept 键盘输入单个字符:wait 键盘输入数据:input 3、几个基本语句:注释(行首注释*或NOTE、行尾注释:&&) 中止(CANCEL) 暂停(WAIT) 4、对话框函数:MESSAGEB0X(“说明”,对话框类型,“标 题”) 导入新课心按书写的顺序执行。 顺序结构·分支结构:从概念、语法和功能上导入
单元12 分支结构 复习旧课 1、程序的编辑、保存和运行。 2、键盘输入语句: 键盘输入字符串:accept 键盘输入单个字符:wait 键盘输入数据:input 3、几个基本语句:注释(行首注释*或NOTE、行尾注释:&&) 中止(CANCEL) 暂停(WAIT) 4、对话框函数:MESSAGEBOX(“说明” ,对话框类型, “标 题”) 5导、入顺新序课结构:按书写的顺序执行。 顺序结构→分支结构:从概念、语法和功能上导入

单元12分支结构 【主要内容】 1.单条件选择语句 2.多条件选择语句 学习目标) 1.掌握单条件选择语句的语法、功能和应用 2.掌握多条件选择语句的语法、功能和应用 3.能够阅读和理解分支结构程序 4.用分支结构的思想编写程序 【课时安排】 共2课时
【主要内容】 1.单条件选择语句 2.多条件选择语句 【学习目标】 1.掌握单条件选择语句的语法、功能和应用 2.掌握多条件选择语句的语法、功能和应用 3.能够阅读和理解分支结构程序 4.用分支结构的思想编写程序 【课时安排】 共2课时 单元12 分支结构

单元12 分支结构 、 单条件选择语句 3、例:在GZJ中显示要查 1、语法结构 询的人,程序为: 单条件选择语句语法格式为 IF〈条件> USE GZJ [语句序列1] ACCEPT“要找谁?”TO ELSE XM [语句序列2] LOCATE FOR姓名=XIM ENDIF IF FOUND() 2、功能 DISPLAY 条件 ELSE ?“查无此人” ENDIF 语句序列1 语句序列2 ?“本程序执行完毕” ENDIF后的语句
一、单条件选择语句 1、语法结构 单条件选择语句语法格式为: IF [语句序列1] [ELSE [语句序列2]] ENDIF 2、功能 条件 语句序列 2 ENDIF 后的语句 .F. .T. 语句序列 1 3、例:在GZJ中显示要查 询的人,程序为: USE GZJ ACCEPT “要找谁?” TO XM LOCATE FOR 姓名=XM IF FOUND() DISPLAY ELSE ? “查无此人” ENDIF ? “本程序执行完毕!” 单元12 分支结构

单元12 分支结构 y=l 单条件选择语句注意事项 if y<>O ①IF、ELSE、ENDIF必须各 X=3 占一行。每一个IF必须有 else x=5 个ENDIF.与之对应,即IF和 endif ENDIF必须成对出现。 if x>4 ②ELSE子句是可选的: if y0.and.y>0 x=12 嵌套中的IF语句必须与ENDIF else 成对出现,ENDIF总是与其前 X=30 面的最近的IF配套。 endif endif 例:写出下列程序的运行结果: else 将y=1分别改成y=-1,0,6,10 X=5 endif ?x
单条件选择语句注意事项 ① IF、ELSE、ENDIF必须各 占一行。每一个IF必须有一 个ENDIF与之对应,即IF和 ENDIF必须成对出现。 ② ELSE子句是可选的。 ③ 语句序列1和语句序列2中 还可以包含IF语句,称为IF 语句的嵌套。要注意,每次 嵌套中的IF语句必须与ENDIF 成对出现,ENDIF总是与其前 面的最近的IF配套。 y=1 if y<>0 x=3 else x=5 endif if x>4 if y0.and.y>0 x=12 else x=30 endif endif else x=5 endif ? x 例:写出下列程序的运行结果: 将y=1分别改成y=-1 ,0,6,10 单元12 分支结构

单元12分支结构 又例:某公司为了促销,采用购物打折扣的办法:每位顾 客一次购物(1)在1000元以上的,按九五折优惠;(2) 在2000元以上的,按九折优惠;(3)在3000元以上的,按 八五折优惠;(4)在5000元以上的,按八折优惠。编写程 序,输入购物款数,计算并输出优惠价。 设购物款为x元,优惠价为y元,付款函数即为: X (x<1000) 0.95x(1000≤x<2000) 0.9x(2000≤x<3000) 0.85x(3000≤x<5000) 0.8x (x≥5000)
又例: 某公司为了促销,采用购物打折扣的办法:每位顾 客一次购物(1)在1000元以上的,按九五折优惠;(2) 在2000元以上的,按九折优惠;(3)在3000元以上的,按 八五折优惠;(4)在5000元以上的,按八折优惠。编写程 序,输入购物款数,计算并输出优惠价。 设购物款为x元,优惠价为y元,付款函数即为: x ( x<1000 ) 0.95x ( 1000≤x<2000 ) y= 0.9x ( 2000≤x<3000 ) 0.85x ( 3000≤x<5000 ) 0.8x ( x≥5000 ) 单元12 分支结构

单元12 分支结构 set talk off endif input"请输人所购商品款数:"tox endif ifx<1000 endif y=x ?"优惠价应为:"+STR(y,10,2)+"元" else ifx<2000 程序结果如下: y=0.95*x else Forml 回x ifx<3000 y=0.9*x 所购商品款数: 5000 else ifx<5000 计算 y=0.85*x 优惠价: 4000.000 else y=0.8*x endif
set talk off input "请输入所购商品款数:" to x if x<1000 y=x else if x<2000 y=0.95*x else if x<3000 y=0.9*x else if x<5000 y=0.85*x else y=0.8*x endif endif endif endif ? "优惠价应为:"+STR(y,10,2)+ "元" 程序结果如下: 单元12 分支结构

单元12 分支结构 二、多条件选择语句 1、语法结构 DO CASE CASE〈条件1) 条件 [语句序列1] 条件2 条件n CASE [语句序列2] 语句1 语句2 语句n语句n+1 CASE [语句序列n] ENDCASE后面的语句 OTHERWISE [语句序列n+1] ENDCASE 2、功能
二、多条件选择语句 1、语法结构 DO CASE CASE [语句序列1] CASE [语句序列2] ...... CASE [语句序列n] [OTHERWISE [语句序列n+1]] ENDCASE 2、功能 条件1 语句1 Y N ENDCASE后面的语句 条件2 语句2 Y N 条件n 语句n Y N 语句n+1 … 单元12 分支结构

单元12分支结构 3、说明 ①D0CASE、CASE和ENDCASE必须各占一行。每个DO CASE必须有一个ENDCASE.与之对应,即D0CASE和ENDCASE必须 成对出现。 ②相应的[语句序列]执行后不再判断其他<条件),直到转向 ENDCASE后面的语句。因此,在一个D0CASE结构中,最多只 能执行一个CASE子句。 ③语句序列中可以嵌套各种控制结构的命令语句。 4、例:针对本节中一例子,使用D0CASE语句来计算优惠价, 程序可改为:
3、说明 ① DO CASE、CASE 和ENDCASE必须各占一行。每个DO CASE必须有一个ENDCASE与之对应,即DO CASE和ENDCASE必须 成对出现。 ② 相应的[语句序列]执行后不再判断其他,直到转向 ENDCASE后面的语句。因此,在一个DO CASE 结构中,最多只 能执行一个CASE子句。 ③ 语句序列中可以嵌套各种控制结构的命令语句。 4、例:针对本节中一例子,使用DO CASE语句来计算优惠价, 程序可改为: 单元12 分支结构

单元12 分支结构 set talk off Form1 回☒ input"请输人所购商品款数:”tox DO CASE 所购商品款数:500回 Case x<1000 计算 Y=x Case x<2000 优惠价: 4000.000 Y=0.95*x Case x<3000 Y=0.9*x Case x<5000 可以看出:程序运行结果相 Y=0.85*x 同,但是代码却清晰多了。 Otherwise 所以在多条件选择环境下, Y=0.8*x 用DO CASE-..ENDCASE比用 Endcase IF...ENDIF程序显得更加精 ?"优惠价应为:"+STR(y,10,2)+"元" 练
set talk off input "请输入所购商品款数:" to x DO CASE Case x<1000 Y=x Case x<2000 Y=0.95*x Case x<3000 Y=0.9*x Case x<5000 Y=0.85*x Otherwise Y=0.8*x Endcase ? "优惠价应为:"+STR(y,10,2)+ "元" 可以看出:程序运行结果相 同,但是代码却清晰多了。 所以在多条件选择环境下, 用DO CASE…ENDCASE比用 IF…ENDIF程序显得更加精 练。 单元12 分支结构

单元12 分支结构 本次课小结 二、多条件选择语句 一、单条件选择语句 DO CASE F CASE [语句序列2] [语句序列2] ENDIF CASE〈条件n) [语句序列n] [OTHERWISE [语句序列n+1]] 本次课作业 ENDCASE 1.书面练习:例7.8 2·上机练习:教材P193
本次课小结 本次课作业 1. 书面练习:例7.8 2 .上机练习:教材P193 一、单条件选择语句 IF [语句序列1] [ELSE [语句序列2]] ENDIF 二、多条件选择语句 DO CASE CASE [语句序列1] CASE [语句序列2] ...... CASE [语句序列n] [OTHERWISE [语句序列n+1]] ENDCASE 单元12 分支结构