程序设计基础(vfp)第五章程序设计基础.ppt

上传人:wuy****n92 文档编号:73615258 上传时间:2023-02-20 格式:PPT 页数:54 大小:722KB
返回 下载 相关 举报
程序设计基础(vfp)第五章程序设计基础.ppt_第1页
第1页 / 共54页
程序设计基础(vfp)第五章程序设计基础.ppt_第2页
第2页 / 共54页
点击查看更多>>
资源描述

《程序设计基础(vfp)第五章程序设计基础.ppt》由会员分享,可在线阅读,更多相关《程序设计基础(vfp)第五章程序设计基础.ppt(54页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第第 五五 章章 程序设计基础程序设计基础5.2 结构化程序设计基础结构化程序设计基础n程序的定义:指将完成某一种功能的一组命令按照一定程序的定义:指将完成某一种功能的一组命令按照一定的逻辑结构和语法规则编写成的一个完整的命令序列。的逻辑结构和语法规则编写成的一个完整的命令序列。n VFP的程序是建立在的程序是建立在程序文件程序文件里,并存储在里,并存储在磁盘磁盘中,执中,执行时将程序文件调入行时将程序文件调入内存内存。n一个结构化程序就是用一个结构化程序就是用高级语言高级语言表示的表示的结构化算法结构化算法。n程序方式具有程序方式具有自动自动和和连续处理连续处理的特点的特点结构化程序设计基础

2、结构化程序设计基础n一个程序一般包括以下几方面内容:一个程序一般包括以下几方面内容:n对数据的描述:指定数据的类型和组织形式,即数据结对数据的描述:指定数据的类型和组织形式,即数据结构;(加工对象)构;(加工对象)n对操作的描述:即操作步骤,就是算法对操作的描述:即操作步骤,就是算法;(灵魂灵魂)n程序设计方法:程序设计方法:n语言工具和环境。语言工具和环境。n算法是解决算法是解决“做什么做什么”和和“怎样做怎样做”的问题,程序的问题,程序中的语句是算法的体现。显然,不了解算法就谈不中的语句是算法的体现。显然,不了解算法就谈不上程序设计。上程序设计。n数据结构数据结构+算法算法+程序设计方法程

3、序设计方法+语言工具和环境语言工具和环境程序程序 建立和编辑程序文件建立和编辑程序文件n建立和编辑程序文件可在任何文本编辑软件中进行。但是建立和编辑程序文件可在任何文本编辑软件中进行。但是VFP也提供了文本编辑器,可以建立和编辑程序文件。也提供了文本编辑器,可以建立和编辑程序文件。n1菜单方式菜单方式(新建和打开新建和打开)n选择选择文件文件菜单中的菜单中的新建新建命令,或选择工具栏中的命令,或选择工具栏中的新建新建按钮,弹出新建对话框。选择按钮,弹出新建对话框。选择“程序程序”项,再单击项,再单击“新建文新建文件件”按钮,即打开编辑窗口。新建文件时,默认文件名是按钮,即打开编辑窗口。新建文件

4、时,默认文件名是“程序程序1”,扩展名是,扩展名是PRG,存储文件时可重命名文件名,结,存储文件时可重命名文件名,结束编辑可按关闭窗口按钮,或按束编辑可按关闭窗口按钮,或按ctrl+w。n如果要打开已存在的程序文件重新编辑,则选择如果要打开已存在的程序文件重新编辑,则选择文件文件菜单菜单的的打开打开命令,或按工具栏中的命令,或按工具栏中的打开打开按钮,找到要打开的按钮,找到要打开的文件,即可打开。文件,即可打开。建立和编辑程序文件建立和编辑程序文件n2命令方式命令方式n 格式一格式一MODIFY COMMAND 程序文件名程序文件名|?n 格式二格式二MODIFY FILE 文本文件名文本文件

5、名|?n说明:说明:n两个命令均打开文本编辑器。格式一,默认编辑两个命令均打开文本编辑器。格式一,默认编辑.PRG程序文件;程序文件;格式二,编辑任何文本文件,无默认扩展名,可编辑格式二,编辑任何文本文件,无默认扩展名,可编辑TXT文文本文件。选择?时,出现本文件。选择?时,出现打开打开对话框,从中选择要打开的文对话框,从中选择要打开的文件。件。n可以同时打开多个文本编辑器,同时编辑多个文件,而且可以可以同时打开多个文本编辑器,同时编辑多个文件,而且可以在文件之间在文件之间“剪切剪切”、“复制复制”、“粘贴粘贴”。n用编辑器编辑的文本格式的用编辑器编辑的文本格式的PRG 程序文件,称程序文件,

6、称VFP源程序。源程序。建立和编辑程序文件建立和编辑程序文件程序的保存与放弃存盘程序的保存与放弃存盘n程序代码输入、编辑后应以文件形式存入磁盘。程序代码输入、编辑后应以文件形式存入磁盘。n选择选择文件文件菜单中的菜单中的保存保存,或,或另存为另存为命令,输入文件名命令,输入文件名后单击后单击“保存保存”。也可以按。也可以按CTRL+W键结束编辑保存文件。键结束编辑保存文件。放弃本次编辑,按放弃本次编辑,按ESC或或CTRL+Q键。键。建立和编辑程序文件建立和编辑程序文件程序的运行程序的运行n输入、编辑完的输入、编辑完的PRG源程序是源程序是文本形式文本形式的高级语言程序,的高级语言程序,计算机

7、还不能直接执行,计算机只能独立执行计算机还不能直接执行,计算机只能独立执行EXE或或COM机器语言程序。机器语言程序。n为了提高程序的运行速度,为了提高程序的运行速度,VFP可以将可以将PRG源程序编译成源程序编译成FXP伪编译程序。伪编译程序。FXP程序进行了部分编译,运行时还需程序进行了部分编译,运行时还需要要VFP环境的支持。环境的支持。n未经编译的未经编译的PRG源程序,源程序,VFP是以解释方式运行。即边编是以解释方式运行。即边编译边运行,运行的同时将译边运行,运行的同时将.prg文件编译成文件编译成.fxp文件文件(磁盘中同磁盘中同时保留时保留.prg和和.fxp两种文件两种文件)

8、。n在在PRG文件和文件和FXP文件同时存在的情况下,优先执行文件同时存在的情况下,优先执行FXP文件。文件。程程 序序 的的 运运 行行n执行源程序执行源程序n执行执行PRG 源程序有多种方法:源程序有多种方法:n(1)选择)选择程序程序菜单中的菜单中的运行运行命令,在运行对话框中选择要执行的命令,在运行对话框中选择要执行的程序文件,单击程序文件,单击“运行运行”按钮。按钮。n(2)执行当前打开编辑的程序文件,只需单击常用工具栏中的)执行当前打开编辑的程序文件,只需单击常用工具栏中的!按按钮。钮。n(3)在命令窗口,执行运行命令)在命令窗口,执行运行命令“DO程序文件名程序文件名”。n在执行

9、过程中程序有错误,系统会出现程序错误提示窗口,在执行过程中程序有错误,系统会出现程序错误提示窗口,提示错误语句和错误原因。单击提示错误语句和错误原因。单击“取消取消”后,运行返回到程后,运行返回到程序编辑窗口,修改存盘后再运行。序编辑窗口,修改存盘后再运行。程程 序序 的的 运运 行行n编译源程序编译源程序n先在程序编辑窗口打开要编译的源程序。选择先在程序编辑窗口打开要编译的源程序。选择程序程序菜单菜单的的编译编译命令,开始编译。如有错误,出现编译对话框并命令,开始编译。如有错误,出现编译对话框并指出错误类型。指出错误类型。n编译后生成编译后生成FXP文件。文件。n执行程序时,若有执行程序时,

10、若有FXP文件就立即执行;若没有文件就立即执行;若没有FXP文文件只有件只有PRG源程序,则解释执行源程序,则解释执行PRG源程序,并同时源程序,并同时编译为编译为FXP文件。文件。5.2.2 5.2.2 程序的三种基本结构程序的三种基本结构程序设计的三种基本结构:程序设计的三种基本结构:顺序结构顺序结构、分支结分支结构和循环结构构和循环结构。所有的程序都可以利用这三种结构的组所有的程序都可以利用这三种结构的组合来实现任何复杂问题的求解。合来实现任何复杂问题的求解。顺序结构顺序结构程序最基本的执行方式,就是按程序中语句的程序最基本的执行方式,就是按程序中语句的先后顺序依次执行每一条语句先后顺序

11、依次执行每一条语句,这就是程序,这就是程序的顺序结构。的顺序结构。1 1辅助命令辅助命令n注释语句注释语句 格式一格式一NOTE NOTE 或或*格式二格式二&说明:注释语句是非执行语句,对程序注释,帮助阅读理说明:注释语句是非执行语句,对程序注释,帮助阅读理解源程序。格式一,放在一行的开头,对前后程序段进行注解源程序。格式一,放在一行的开头,对前后程序段进行注释;格式二,放在某条语句的后面对本语句注释。释;格式二,放在某条语句的后面对本语句注释。n系统初始化命令系统初始化命令 格式格式 CLEAR ALL CLEAR ALL 说明:清除所有内存变量和数组,关闭所有打开的各类文说明:清除所有内

12、存变量和数组,关闭所有打开的各类文件,选择件,选择1 1号工作区为当前工作区,使系统恢复到初始状态。号工作区为当前工作区,使系统恢复到初始状态。n清屏命令清屏命令 格式格式 CLEARCLEAR 说明:清除当前屏幕上所有信息,光标定位在屏幕左上角。说明:清除当前屏幕上所有信息,光标定位在屏幕左上角。n信息显示控制命令信息显示控制命令 格式格式 SET TALK ON|OFF SET TALK ON|OFF 说明:有些命令执行后,会在屏幕上返回有关信息,实现与说明:有些命令执行后,会在屏幕上返回有关信息,实现与用户用户“对话对话”(Talk)”(Talk)。程序中设置为。程序中设置为 OFF O

13、FF将关闭对话将关闭对话,有程有程序控制信息的显示,默认为序控制信息的显示,默认为ONON状态。状态。如:如:nUSE RSGZ.DBFnbrownSUM 实发工资实发工资,基本工资基本工资*12 TO SFGZ,NJBGZnAVERAGE 基本工资基本工资 TO JBGZn?实发工资实发工资=,SFGZ n?基本工资基本工资*12=,NJBGZn?平均基本工资平均基本工资=,JBGZ nUSEn警告信息显示控制命令警告信息显示控制命令 格式格式 SET SAFETY ON|OFF SET SAFETY ON|OFF 说明:为了安全,在执行一些不能再恢复的操作前,系统说明:为了安全,在执行一些

14、不能再恢复的操作前,系统在屏幕上显示在屏幕上显示“警告信息警告信息”提示谨慎操作。如提示谨慎操作。如ZAPZAP命令删除命令删除记录,记录,INDEX INDEX 命令是否覆盖文件等。设置命令是否覆盖文件等。设置OFFOFF状态将不作提状态将不作提示直接操作,默认为示直接操作,默认为ONON状态。状态。n输出文本信息语句输出文本信息语句 格式格式 TEXT TEXT ENDTEXT ENDTEXT 说明:在光标当前位置显示文本信息,说明:在光标当前位置显示文本信息,TEXT ENDTEXTTEXT ENDTEXT成对出现,缺一不可。相当于多个?语句,但能成对出现,缺一不可。相当于多个?语句,但

15、能控制控制输出文输出文本的本的位置位置。n终止程序执行命令终止程序执行命令 格式格式 CANCEL CANCEL 说明:该语句将中止正在运行的程序。在程序中说明:该语句将中止正在运行的程序。在程序中一般与条件语句配合使用,有条件的中止程序执行。一般与条件语句配合使用,有条件的中止程序执行。n返回语句返回语句 格式格式RETURN RETURN|TO MASTER|TO|TO MASTER|TO 说明:结束程序的执行。说明:结束程序的执行。TO MASTER TO MASTER 直接返回到直接返回到主程序,如果程序是被另一程序调用,则返回到调主程序,如果程序是被另一程序调用,则返回到调用程序,否

16、则返回到命令窗口。用程序,否则返回到命令窗口。2 2基本的输入、输出命令基本的输入、输出命令输入命令输入命令n输入一个字符命令(等待命令)输入一个字符命令(等待命令)格式格式:WAIT:WAITTO TO WINDOW AT WINDOW AT ,NOWAITTIMEOUT NOWAITTIMEOUT 功能功能 暂停程序执行,等待用户从键盘输入一键,并继续执行。暂停程序执行,等待用户从键盘输入一键,并继续执行。说明:说明:n该命令只能从键盘接收一个字符,选该命令只能从键盘接收一个字符,选TOTO短语将接收的字符赋值给内短语将接收的字符赋值给内存变量。字符表达式为提示语,缺省为存变量。字符表达式

17、为提示语,缺省为“按任意键继续按任意键继续”n例如:例如:wait to await to a输输 入入 命命 令令n输入字符串命令输入字符串命令 格式格式 ACCEPT ACCEPT TO TO 功能功能 从键盘输入一个从键盘输入一个字符串常量字符串常量赋给内存变量。赋给内存变量。说明:说明:输入的字符串输入的字符串不用定界符不用定界符括起来括起来,若使用定界符则成为字符若使用定界符则成为字符串的内容,输入完按串的内容,输入完按回车结束回车结束。例如:例如:accept“accept“请输入姓名请输入姓名:”to name:”to name 例:按姓名在xsda中查找职工信息输输 入入 命命

18、 令令n3 3输入任意类型数据命令输入任意类型数据命令 格式格式 INPUT INPUT TO TO 功能功能 从键盘输入从键盘输入数值型、字符型、日期型、逻辑型、货币数值型、字符型、日期型、逻辑型、货币型数据型数据给内存变量。给内存变量。说明:说明:输入的常量必须用符号表示出数据类型,输入完按回输入的常量必须用符号表示出数据类型,输入完按回车结束。如:车结束。如:n 3.1416 3.1416n”男男”n2000-10-012000-10-01n.T.T.n$987.65$987.65输入输出命令小结输入输出命令小结nWAIT WAIT 只输入只输入一个字符一个字符给内存变量,不用打回车;给

19、内存变量,不用打回车;nACCEPTACCEPT输入一个字符串给内存变量,输入一个字符串给内存变量,字符串不用定字符串不用定界符界符,回车结束;,回车结束;nINPUT INPUT 可输入各种类型数据给内存变量,可输入各种类型数据给内存变量,但要加定但要加定界符,输入字符时尽量用界符,输入字符时尽量用ACCEPTACCEPT;这三个命令都是赋值给这三个命令都是赋值给内存变量内存变量,光标位置不可控制。,光标位置不可控制。顺序结构程序设计例子顺序结构程序设计例子求圆的面积,半径从键盘输入。求圆的面积,半径从键盘输入。SET TALK OFFINPUT 请输入圆的半径值:请输入圆的半径值:TO R

20、S=PI()*R*R?SSET TALK ONRETURN例子:例子:从键盘输入任意一个三位数,并求出其从键盘输入任意一个三位数,并求出其个、十、百位。个、十、百位。nclearnclear allninput 请输入一个三位数:to nng=n%10nb=int(n/100)ns=int(n-b*100-g)/10)n?个位:,gn?十位:,sn?百位:,bnclearnclear allninput 请输入一个三位数:to nnc=str(n,3)ng=substr(c,3,1)ns=substr(c,2,1)nb=substr(c,1,1)n?个位:,gn?十位:,sn?百位:,b例:例

21、:两个数交换值两个数交换值nCLEARnINPUT 输入第一个数输入第一个数:TO XnINPUT 输入第二个数输入第二个数:TO Yn?X=,x,y=,YnT=XnX=YnY=Tn?X=,x,y=,YnRETURN例子例子:从键盘输入姓名,在从键盘输入姓名,在rsda中定位记录,中定位记录,并将其的职称改为并将其的职称改为“讲师讲师”SET TALK OFFSET TALK OFFCLEARCLEARUSE rsdaUSE rsdaACCEPT ACCEPT 请输入要修改记录的姓名请输入要修改记录的姓名:TO xm:TO xmLOCATE FOR LOCATE FOR 姓名姓名=xm=xmR

22、EPL REPL 职称职称 WITH WITH 讲师讲师 DISPDISPCLOSE ALLCLOSE ALLSET TALK ONSET TALK ONRETURNRETURN5.2.4 5.2.4 分支结构程序设计分支结构程序设计n 程序运行一般情况是顺序执行。但有时根程序运行一般情况是顺序执行。但有时根据处理问题的实际情况,可能有两种或多种据处理问题的实际情况,可能有两种或多种情况,要根据具体的条件选择其中的一种。情况,要根据具体的条件选择其中的一种。对应于程序设计就产生程序的分支结构。对应于程序设计就产生程序的分支结构。1.1.单分支结构程序单分支结构程序 ENDIFENDIF后的语句

23、后的语句条件条件.T.语句序列语句序列1 1.F.格式:格式:(IFENDIF)(IFENDIF)简单分支语句的格式:IF ENDIF功能说明:若条件为真则执行IF到ENDIF否则执行ENDIF之后的语句。例5.1 从键盘上输入任意两个数据,请按照从大到小的顺序输出nSET TALK OFFSET TALK OFFnCLEARCLEARnINPUT INPUT 请输入第一个数据:请输入第一个数据:TO A TO AnINPUT INPUT 请输入第二个数据:请输入第二个数据:TO B TO BnIF AB&IF AB&满足条件两个数据发生交换,否则不执行条件语句满足条件两个数据发生交换,否则不

24、执行条件语句n T=A T=An A=B A=Bn B=T B=TnENDIFENDIFn?A,B?A,BnSET TALK ONSET TALK ONnRETURNRETURN?a,ba,bab.T.交换交换a,ba,b的值的值输入两个数输入两个数a,ba,b例例5.2 从键盘输入两个数求最大值从键盘输入两个数求最大值nSET TALK OFFnclearnINPUT 请输入第一个数请输入第一个数:TO anINPUT 请输入第二个数请输入第二个数:TO bnmax=anif abn max=bnendifn?最大值为:最大值为:,maxnSET TALK ONnRETURN?maxmaxa

25、=a AND L=a AND L=z L=UPPER(L)L=UPPER(L)ENDIFENDIF?L?LSET TALK ON SET TALK ON 格式:IF ELSE ENDIF 功能说明:若条件为真,执行命令序列1,然后执行ENDIF的后继命令。如果条件为假,且有ELSE子句,执行命令序列2,然后执行ENDIF的后续命令,若无ELSE子句,则直接转到ENDIF之后。ENDIFENDIF后后 的的 语语句句语句序列语句序列1 1条条件件.Y.N.语句序列语句序列2 22 2双分支结构双分支结构(IFELSEENDIF)(IFELSEENDIF)注:(1)IF和ENDIF必须配对使用,而

26、ELSE可选。(2)IF、ELSE、ENDIF必须各占一行。(3)可以为关系表达式、逻辑表达式。(4)在语句序列1和语句序列2中可以嵌套IF语句。例例5.45.4:用选择分支语句,重新编写上例的程序:用选择分支语句,重新编写上例的程序SET TALK OFFSET TALK OFFclearclearINPUT INPUT 请输入第一个数请输入第一个数:TO a:TO aINPUT INPUT 请输入第二个数请输入第二个数:TO b:TO bif abif ab max=a max=aElseElse max=b max=bendifendif?最大值为:最大值为:,max,maxSET TA

27、LK ONSET TALK ONRETURN RETURN 例例5.55.5:用选择分支语句,重新编写上例的程序:用选择分支语句,重新编写上例的程序SET TALK OFFSET TALK OFFCLEARCLEARWAIT WAIT 请输入一个字符请输入一个字符:TO L:TO LIF L=a AND L=a AND L=z?UPPER(L)UPPER(L)ELSE ELSE?L?LENDIFENDIFSET TALK ON SET TALK ON nuse rsdanaccept 输入要查询职工的姓名:输入要查询职工的姓名:to namenlocate for 姓名姓名=namenIf f

28、ound()n dispn elsen?查无此人!查无此人!nendifnuse例例5.65.6:在在rsdarsda表中按姓名查找职工信息,找到了则显示,表中按姓名查找职工信息,找到了则显示,找不到给出提示。找不到给出提示。n3 3IIF()IIF()判断选择函数判断选择函数 IIF()IIF()函数具有简单条件分支函数具有简单条件分支IFIF语句的作用,在有些情况语句的作用,在有些情况下使用更方便快捷。下使用更方便快捷。n 格式格式 IIF(IIF(,)2)n说明:说明:作用同作用同IFIF语句,当语句,当 的值为的值为.T.T时,函数返回时,函数返回 1的值;否则函数返回的值;否则函数返

29、回 2的值。的值。n 1、2的数据类型可以是字符型、数值型、的数据类型可以是字符型、数值型、日期型、日期时间型、货币型、逻辑型,并允许两个表达式日期型、日期时间型、货币型、逻辑型,并允许两个表达式的数据类型不同。的数据类型不同。n 1、2也可以是也可以是IIF()IIF()函数,形成函数,形成IIF()IIF()函函数的嵌套。数的嵌套。SET TALK OFFSET TALK OFFINPUTINPUT “请输入所用电量:请输入所用电量:TOTO DL DLIFIF DL=50DL=50 DF=DL*0.5 DF=DL*0.5ELSEELSE DF=50*0.5+(DL-50)*0.8 DF=

30、50*0.5+(DL-50)*0.8ENDIFENDIF?“?“应缴电费为应缴电费为:”+LTRIM(STR(DF,10,2)+:”+LTRIM(STR(DF,10,2)+元元 SET TALK ONSET TALK ONRETURN RETURN SET TALK OFFSET TALK OFFINPUT INPUT 请输入所用电量请输入所用电量:TO DL:TO DLDF=IIF(DL=50,0.5*DL,0.5*50+0.8*(DL-50)DF=IIF(DL=50,0.5*DL,0.5*50+0.8*(DL-50)?应缴电费为应缴电费为:+LTRIM(STR(DF,10,2)+:+LTR

31、IM(STR(DF,10,2)+元元 SET TALK ONSET TALK ONRETURNRETURN 例例5.7 5.7 请用分支结构语句编程计算电费:不超过请用分支结构语句编程计算电费:不超过5050度,每度度,每度0.50.5元;超元;超过过5050度时,超出部分每度度时,超出部分每度0.80.8元。元。结论:条件函数结论:条件函数IIFIIF同样具有逻辑判断功能同样具有逻辑判断功能 SET TALK OFFINPUT 请输入行李重量请输入行李重量:TO WIF 1 YF=0.22*W ELSE YF=0.22*40+1ENDIF?应交托运费为应交托运费为:+LTRIM(STR(YF

32、,10,2)+元元SET TALK ONRETURN 例例5.8 5.8 火车托运行李火车托运行李:每人不超过每人不超过4040公斤公斤,每公斤每公斤0.220.22元;超过元;超过4040公斤时公斤时,超出部分每公斤超出部分每公斤0.400.40元。填空完成以下程序。元。填空完成以下程序。W=0IF a=0%b=a b=a%ELSEELSE%b=-a b=-a%ENDIFENDIFn解法二解法二nCLEARCLEARnSET TALK OFFSET TALK OFFnINPUT INPUT 输入输入a a的值:的值:to a to anb=ab=anIF a0IF ab,则,则max=a,否

33、则否则max=b;3)max和和c比较,若比较,若maxbmax=amax=bmaxcmax=c输出max结束结束YYNNnSET TALK OFFSET TALK OFFnCLEARCLEARn?请输入三个数:请输入三个数:nINPUT A=TO AINPUT A=TO AnINPUT B=TO BINPUT B=TO BnINPUT C=TO CINPUT C=TO CnIF ABIF ABn Max=A Max=AnELSEELSEn Max=B Max=BnENDIFENDIFnIF MAXCIF MAXCn MAX=C MAX=CnENDIFENDIFn?MAX?MAXnSET TA

34、LK ONSET TALK ONnRETURNRETURNIfIf嵌套举例嵌套举例n格式:格式:nIf If 1n if if2n 1n else elsen 2 n endif endifnElseElsen if if3n 3n else elsen 4 n endif endif nEndifEndif分支结构举例分支结构举例n举例举例2 2:编写程序由键盘输入:编写程序由键盘输入A,B,CA,B,C三个数,三个数,按值的大小顺序显示出来。按值的大小顺序显示出来。(三个数比较大小有六种情况,需要六个三个数比较大小有六种情况,需要六个IF IF 语句;我们采用另一种算法。语句;我们采用另一

35、种算法。先比较任意两个数,并将其中的大数存先比较任意两个数,并将其中的大数存入内存变量入内存变量M M,小数存入,小数存入N N。再将第三个数与。再将第三个数与M M及及N N比较得到三个数的大小顺序。画流程图表比较得到三个数的大小顺序。画流程图表示此算法。示此算法。)分支结构举例分支结构举例n*三个数排序三个数排序.prg.prgnSET TALK OFFSET TALK OFFnCLEARCLEARn?对三个数排序,请输入三个数:对三个数排序,请输入三个数:nINPUT A=TO AINPUT A=TO AnINPUT B=TO BINPUT B=TO BnINPUT C=TO CINPU

36、T C=TO CnIF ABIF ABnM=AM=AnN=BN=BnELSEELSEnM=BM=BnN=AN=AnENDIFENDIFnIF CMIF CMn?C,M,N?C,M,NnELSEELSEnIF CNIF CC CC C C分支结构举例分支结构举例nSET TALK OFFSET TALK OFFnCLEARCLEARn?对三个数排序,请输入三个数:对三个数排序,请输入三个数:nINPUT A=TO AINPUT A=TO AnINPUT B=TO BINPUT B=TO BnINPUT C=TO CINPUT C=TO CnIF ABIF AAn?C,A,BnELSEnIF CB

37、n?A,B,CnELSEn?A,C,BnENDIFnENDIFnSET TALK ON 例子例子n从键盘输入一个成绩,然后判断:不及格从键盘输入一个成绩,然后判断:不及格(90)nCLEARnSET TALK OFFnINPUT 请输入学生的成绩:请输入学生的成绩:TO NnIF N60n?不及格不及格n ELSEn IF N75n?及格及格n ELSE nIF N90n?良好良好nELSEn?优秀优秀nENDIFn ENDIFnENDIFnSET TALK ONnRETURN多重分支条件语句多重分支条件语句n 多分支结构可以利用多分支结构可以利用 IF IF 语句的多重嵌套来实现,但程序语句

38、的多重嵌套来实现,但程序结构复杂不易阅读。结构复杂不易阅读。VFPVFP提供了提供了DO CASEDO CASE语句,可很方便的实语句,可很方便的实现多分支程序结构。现多分支程序结构。n 格式格式 DO CASEDO CASECASE CASE 1 1CASE CASE 2 2CASE CASE n n OTHERWISEOTHERWISE n+1 ENDCASE ENDCASE DO CASE前面的命令条件1命令序列1条件2命令序列2条件n命令序列n命令序列n+1ENDCASE后面的命令YYYNNNNDO CASE DO CASE 语句说明语句说明n 依次判断每一个依次判断每一个 CASE

39、CASE 后面的条件,当判断到一后面的条件,当判断到一个条件满足,执行该条件下的语句序列,然后转到个条件满足,执行该条件下的语句序列,然后转到 ENDCASE ENDCASE 后面的语句执行。后面的语句执行。n 如果所有条件都不满足,并选择了如果所有条件都不满足,并选择了OTHERWISE OTHERWISE 语语句,则执行其后的语句序列,否则不执行任何语句。句,则执行其后的语句序列,否则不执行任何语句。n若有多个条件成立,只能执行到第一个满足条件的若有多个条件成立,只能执行到第一个满足条件的语句序列语句序列,就转至,就转至ENDCASEENDCASE后面执行。后面执行。nDO CASEDO

40、CASE语句本身可以嵌套,也可以与语句本身可以嵌套,也可以与IFIF语句互相语句互相嵌套。嵌套。n条件表达式条件表达式2 2包含着条件表达式包含着条件表达式1 1不成立。不成立。DO CASE 语句举例语句举例nSET TALK OFFSET TALK OFFnCLEARCLEARnINPUT INPUT 请输入学生的成绩:请输入学生的成绩:TO NTO NnDO CASEDO CASEnCASE N60CASE N60n?不及格不及格 nCASE N75CASE N75n?及格及格 nCASE N90CASE N=600CASE GZ=600nGZ=GZ*(1+0.2)GZ=GZ*(1+0.2)nCASE GZ=400CASE GZ=400nGZ=GZ*(1+0.15)GZ=GZ*(1+0.15)nCASE GZ400CASE GZ400nGZ=GZ*(1+0.1)GZ=GZ*(1+0.1)nENDCASEENDCASEn?GZ?GZnSET TALK ONSET TALK ONnRETURNRETURN

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com