100 likes | 276 Views
第五章 程序设计基础 5.2.2 选择结构程序设计. 复习: 1 、 程序文件是一个文件,程序文件的默认扩展名是: .PRG 。 2 、 新建程序的方法。 A 、使用项目管理器 B 、使用菜单 C 、使用命令: MODIFY COMMAND 〈 程序文件名 〉 3 、 运行程序的方法。 A 、使用项目管理器 B 、使用菜单 C 、使用命令: DO 〈 程序文件名 〉 4 、设计程序的三种基本结构。 A 、顺序结构(已讲):程序按从上而下的顺序执行。它是最基本的程序结构。 B 、 选择结构(待讲):已讲授单分支结构。 IF……ENDIF 语句
E N D
第五章 程序设计基础 5.2.2选择结构程序设计 复习: 1、程序文件是一个文件,程序文件的默认扩展名是:.PRG。 2、新建程序的方法。 A、使用项目管理器 B、使用菜单 C、使用命令:MODIFY COMMAND 〈程序文件名〉 3、运行程序的方法。 A、使用项目管理器 B、使用菜单 C、使用命令:DO 〈程序文件名〉 4、设计程序的三种基本结构。 A、顺序结构(已讲):程序按从上而下的顺序执行。它是最基本的程序结构。 B、选择结构(待讲):已讲授单分支结构。 IF……ENDIF 语句 C、循环结构(待讲)
新课 目的:掌握选择结构中的双分支结构和多分支结构。 重点:1、双分支选择结构和多分支选择结构的语句。 2、两种选择结构在实际项目中的应用。 一、双分支选择结构。 语句格式如下: IF 〈条件〉 〈语句组1〉 ELSE 〈语句组2〉 ENDIF 参数说明:①IF是单分支选择结构开始的语句,ENDIF是单分支选择结构结束 的语句,它们必须成对使用。 ②<条件>是一个逻辑表达式。 ③<语句组>由一组VFP的命令组成。
程序流程:程序执行到双分支选择结构时,首先检查IF后面的“条件”。如果满足条件(即该逻辑表达式的值为真),则执行“语句组1”,否则执行“语句组2”。“语句组1”或“语句组2”执行完后,再执行ENDIF后面的语句。程序流程:程序执行到双分支选择结构时,首先检查IF后面的“条件”。如果满足条件(即该逻辑表达式的值为真),则执行“语句组1”,否则执行“语句组2”。“语句组1”或“语句组2”执行完后,再执行ENDIF后面的语句。
程序举例 1:输入一个温度,若大于36度则显示高温,反之则显示不是高温。 程序分析: ①首先接收一个温度 ②判断该温度与标准温度36度的大小,若大了则显示高温,反之 则显示不是高温。 写程序: clear input “请输入温度” to WD if WD>36 wait “该温度是高温。请按任意键继续……” else wait “该温度不是高温。请按任意键继续……” endif return
举例2:在xsda表中查找用户指定的学号。如果查找成功,显示该记录,否则显示一条说明信息。请编写程序FIND.PRG,并把程序文件保存在e:\lx_24文件夹中。举例2:在xsda表中查找用户指定的学号。如果查找成功,显示该记录,否则显示一条说明信息。请编写程序FIND.PRG,并把程序文件保存在e:\lx_24文件夹中。 分析:①首先接收用户输入的学号 ②查找指定的学号 ③根据查找的结果显示数据。(结果分两种:A、查找成功则显示该条信息B、失败则显示说明信息。) 写程序: clear use xsda accept “请输入查询的学号:” to XH locate for 学号= =XH if found() display else wait “不存在该学号的学生,请按任意键继续……” window endif return
二、分支选择结构 语句格式如下: DO CASE CASE<条件1> <语句组1> CASE<条件2> <语句组2> …… CASE<条件n> <语句组n> [otherwise语句组] ENDCASE 参数说明:DO CASE是多分支选择结构开始的语句,ENDCASE是 多分支选择结构结束的语句,它们必须成对使用,缺一不可。
一、程序举例:在xscj表中查找用户指定的学号,并显示该学生第一学期数学成绩的等级。其中数学>=90为“A”,80<=成绩<90为“B”,70<=成绩<80为“C”,60<=成绩790为“D”,数学<60为“E”。程序文件名FOUND_CJ.PRG,文件保存到e:\lx_24文件夹中。一、程序举例:在xscj表中查找用户指定的学号,并显示该学生第一学期数学成绩的等级。其中数学>=90为“A”,80<=成绩<90为“B”,70<=成绩<80为“C”,60<=成绩790为“D”,数学<60为“E”。程序文件名FOUND_CJ.PRG,文件保存到e:\lx_24文件夹中。 写程序: use xscj accept “请输入查询的学号:” to XH locate for 学号= =XH if found() do case case数学>=90 wait “该学生数学成绩是A,请按任意键继续……” case数学>=80 wait “该学生数学成绩是B,请按任意键继续……” case数学>=70 wait “该学生数学成绩是C,请按任意键继续……”
case数学>=60 wait “该学生数学成绩是D,请按任意键继续……” window otherwise wait “该学生数学成绩是E,请按任意键继续……” window endcase else wait “不存在该学号的学生” window endif use return
三、学生练习。 1、同例。在xsda表中查找用户指定的学号。如果查找成功,显示该记录,否则显示一条说明信息。请编写程序FIND.PRG,并把程序文件保存在e:\lx_24文件夹中。 2、同例。在xscj表中查找用户指定的学号,并显示该学生第一学期数学成绩的等级。其中数学>=90为“A”,80<=成绩<90为“B”,70<=成绩<80为“C”,60<=成绩790为“D”,数学<60为“E”。程序文件名FOUND_CJ.PRG,文件保存到e:\lx_24文件夹中。
五、小结。 1、双分支选择结构。IF……ELSE……ENDIF 2、多分支选择结构。 DO CASE…CAES…OTHERWISE…ENDCASE 3、选择结构在实际项目中的应用。(三个实例)