




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第七章第七章 应用程序设计基础应用程序设计基础7.1 程序文件的建立与运行程序文件的建立与运行VFP系统提供的命令十分丰富,而且功能强大。系统提供的命令十分丰富,而且功能强大。把这些命令和程序设计语句有效地组织在一起,把这些命令和程序设计语句有效地组织在一起,形成实现某一特定功能的程序,能够更充分地体形成实现某一特定功能的程序,能够更充分地体现现VFP系统的特点。系统的特点。VFP系统的程序有两个特点:一是程序控制流模系统的程序有两个特点:一是程序控制流模式,由顺序、分支、循环三种基本结构构成,每式,由顺序、分支、循环三种基本结构构成,每一个基本结构可以包含一个或多个语句。二是面一个基本结构可
2、以包含一个或多个语句。二是面向对象可视化的结构程序模块,每个模块也是由向对象可视化的结构程序模块,每个模块也是由程序控制流组成。程序控制流组成。7.1.1 程序文件的建立和编辑程序文件的建立和编辑VFP程序文件程序文件,是一个以是一个以 .PRG为扩展名的文本文件。为扩展名的文本文件。1、建立和编辑程序文件、建立和编辑程序文件在在VFP系统环境下,建立、编辑程序文件可以使用系统环境下,建立、编辑程序文件可以使用以下两种方法:以下两种方法:(1)使用)使用MODIFY COMMAND命令建立、编辑程命令建立、编辑程序文件序文件命令格式:命令格式:MODIFY COMMAND 程序文件名程序文件名
3、命令功能:在程序文件编辑窗口,建立或编辑以命令功能:在程序文件编辑窗口,建立或编辑以程序文件名为名的程序文件。程序文件名为名的程序文件。(2)用菜单方式建立、编辑程序文件)用菜单方式建立、编辑程序文件选择选择“文件文件”菜单中菜单中“新建新建”命令,进入命令,进入“新建新建”窗口。窗口。在在“新建新建”窗口,选择窗口,选择“程序程序”,单击,单击“新建文新建文件件”按钮,进入按钮,进入“程序文件程序文件”编辑窗口。编辑窗口。在在“程序文件程序文件”编辑窗口,输入新的程序文件或编辑窗口,输入新的程序文件或修改已有的程序文件,输入完后,按修改已有的程序文件,输入完后,按Ctrl+W命令或命令或单击
4、常用工具栏中单击常用工具栏中“保存保存”按钮存盘。按钮存盘。例如:以命令方式在当前盘的默认目录下,建立例如:以命令方式在当前盘的默认目录下,建立一个查看一个查看DA1表结构和内容的命令文件。表结构和内容的命令文件。在命令窗口中输入:在命令窗口中输入:MODIFY COMMAND W1 在程序编辑窗口中输入如下代码:在程序编辑窗口中输入如下代码: SET TALK OFF CLEAR USE DA1 LIST STRUCTURE LISTUSESET TALK ON按按Ctrl+W存盘在当前盘的默认目录下建立一个存盘在当前盘的默认目录下建立一个W1.PRG程序文件。程序文件。说说 明:明:(1)
5、命令注释:程序中可以插入注释,以提高程)命令注释:程序中可以插入注释,以提高程序的可读性。序的可读性。以以NOTE或或*号开头的代码行为注释行。命令行后号开头的代码行为注释行。命令行后也可添加注释,这种注释以符号也可添加注释,这种注释以符号&开头。注释为开头。注释为非执行语句,不影响程序的功能。非执行语句,不影响程序的功能。(2)命令分行)命令分行程序中每条命令都以回车键结尾,一行只能写一程序中每条命令都以回车键结尾,一行只能写一条命令。若命令行太长,需要分行书写,则应在条命令。若命令行太长,需要分行书写,则应在附最后一行外的每一行末加续行符附最后一行外的每一行末加续行符“;”,表示,
6、表示下一行是这一行的继续。下一行是这一行的继续。2、状态设置命令、状态设置命令在在VFP中有一系列以中有一系列以SET开头的状态设置命令,开头的状态设置命令,来设置在运行程序时来设置在运行程序时VFP系统的一些状态。下面系统的一些状态。下面给出一些常用的设置命令。给出一些常用的设置命令。(1)命令执行结果输出命令)命令执行结果输出命令命令格式:命令格式:SET TALK ON|OFF命令功能:选择命令功能:选择ON时,许多数据处理命令在执行时,许多数据处理命令在执行时都会返回一些有关执行状态的信息,这些信息时都会返回一些有关执行状态的信息,这些信息通常会显示在通常会显示在VFP主窗口、状态栏或
7、用户自定义主窗口、状态栏或用户自定义窗口中;选择窗口中;选择OFF时则这些信息不显示。缺省时时则这些信息不显示。缺省时为为ON状态。状态。(2)命令行输出命令)命令行输出命令命令格式:命令格式:SET ECHO ON|OFF命令功能:选择命令功能:选择ON状态时,将在屏幕或打印机上状态时,将在屏幕或打印机上输出命令行及运行结果,选择输出命令行及运行结果,选择OFF状态只输出运状态只输出运行结果,不输出命令本身,缺省为行结果,不输出命令本身,缺省为OFF状态。状态。命令格式:命令格式:SET PRINT ON|OFF命令功能:选择命令功能:选择ON状态时,接通打印机,选择状态时,接通打印机,选择
8、OFF状态时,则断开打印机,缺省值为状态时,则断开打印机,缺省值为OFF状态。状态。(3)数据的输出语句)数据的输出语句命令格式:命令格式:SET DEVICE TO PRINT|SCREEN命令功能:将命令功能:将SAY命令的结果送到打印机或命令的结果送到打印机或屏幕。屏幕。说说 明:明:如果选用如果选用PRINT项,系统的输出便发往打印机,项,系统的输出便发往打印机,但执行该语句后并没有启动打印机。通过按但执行该语句后并没有启动打印机。通过按Ctrl+P键或输入键或输入SET PRINT ON命令方式可使命令方式可使打印机启动。打印机启动。若选用若选用SCREEN选择项,则输出转向屏幕。选
9、择项,则输出转向屏幕。(4)ASCII码文本输出命令(码文本输出命令(TYPE)命令格式:命令格式:TYPE TO PRINT命令功能:在屏幕上或打印机上输出命令功能:在屏幕上或打印机上输出ASCII码的码的非结构文件(文本文件)。非结构文件(文本文件)。(5)命令文件终止命令()命令文件终止命令(CANCEL)命令格式:命令格式:CANCEL命令功能:本命令终止命令文件的执行,并关闭命令功能:本命令终止命令文件的执行,并关闭所有打开的文件。所有打开的文件。可用于书写注释。可用于书写注释。3、简单的输入输出命令、简单的输入输出命令(1)INPUT 命令命令命令格式:命令格式:INPUT TO
10、命令功能:等待用户从键盘输入任意合法的表达命令功能:等待用户从键盘输入任意合法的表达式,按回车键式,按回车键 ,数据值存入指定的内存变量。,数据值存入指定的内存变量。例如:输入数值型数据。例如:输入数值型数据。INPUT “请输入工资:请输入工资:” TO GZ请输入工资:请输入工资:800.00 ?GZ800.00?TYPE(GZ)显示结果:显示结果:N播放演示计算键盘输入任意两个数的平均值播放演示计算键盘输入任意两个数的平均值(2)ACCEPT 命令命令命令格式:命令格式: ACCEPT TO 命令功能:等待用户从键盘输入字符串常量。按命令功能:等待用户从键盘输入字符串常量。按回车键,字符
11、串存入指定的内存变量。回车键,字符串存入指定的内存变量。例如:提示用户输入姓名,显示变量的值。例如:提示用户输入姓名,显示变量的值。ACCEPT “请输入姓名:请输入姓名:” TO XM请输入姓名:张亮请输入姓名:张亮 ?XM显示结果:张亮显示结果:张亮(3)WAIT命令命令命令格式:命令格式: WAIT TO WINDOW AT , NOWAITCLEAR|NOCLEAR TIMEOUT 命令功能:该命令显示字符表达式的值作为提示命令功能:该命令显示字符表达式的值作为提示信息,暂停程序的执行,直到用户按任意键或单信息,暂停程序的执行,直到用户按任意键或单击鼠标时继续程序的执行。击鼠标时继续程
12、序的执行。例如:例如:WAIT “继续打印吗?(继续打印吗?(Y/N)”TO A继续打印吗?(继续打印吗?(Y/N)Y?A显示结果:显示结果:Y7.1.2 程序文件的执行程序文件的执行1、命令方式、命令方式命令格式:命令格式:DO WITH命令功能:运行以程序文件名为名的程序文件。命令功能:运行以程序文件名为名的程序文件。2、菜单方式、菜单方式(1)选择)选择“程序程序”菜单中菜单中“运行运行”命令,进入命令,进入“运行运行”窗口。窗口。(2)在)在“运行运行”窗口中选择或输入要运行的程序窗口中选择或输入要运行的程序文件名。文件名。7.1.3 程序文件的调试程序文件的调试使用程序调试工具的操作
13、步骤如下:使用程序调试工具的操作步骤如下:(1)选择)选择“工具工具”菜单中菜单中“调试器调试器”命令或在命命令或在命令窗口中输入令窗口中输入DEBUG命令,进入命令,进入“调试器调试器”窗口。窗口。(2)在)在“调试器调试器”窗口,选择窗口,选择“工具工具”菜单中菜单中“断点断点”,进入,进入“断点断点”对话框。对话框。(3)在)在“断点断点”对话框中,选择程序文件,设置对话框中,选择程序文件,设置程序的断点,使程序在执行时,遇到该断点则被挂程序的断点,使程序在执行时,遇到该断点则被挂起。起。(4)在)在“调试器调试器”窗口,选择窗口,选择“窗口窗口”菜单中菜单中“监视监视”,可进入,可进入
14、“监视监视”对话框。对话框。(5)在)在“调试器调试器”窗口,选择窗口,选择“窗口窗口”菜单中菜单中“跟踪跟踪”,可进入,可进入“跟踪跟踪”对话框。对话框。7.2 程序控制结构程序控制结构程序结构是指程序中命令或语句执行的流程结构。程序结构是指程序中命令或语句执行的流程结构。在在VFPVFP系统的应用程序中,常见的程序控制结构有系统的应用程序中,常见的程序控制结构有顺序结构、选择结构和循环结构三种。顺序结构、选择结构和循环结构三种。顺序结构是任何从简单到复杂的程序都离不开的顺序结构是任何从简单到复杂的程序都离不开的主体基本结构,它按命令在程序中出现的先后次主体基本结构,它按命令在程序中出现的先
15、后次序依次执行。但是绝大多数问题仅用顺序结构是序依次执行。但是绝大多数问题仅用顺序结构是无法解决的,还要用到选择结构和循环结构。无法解决的,还要用到选择结构和循环结构。7.2.1 选择结构程序设计选择结构程序设计选择结构是选择结构是VFP系统程序的基本结构之一,又称分系统程序的基本结构之一,又称分支结构。选择结构语句有三种基本形式。支结构。选择结构语句有三种基本形式。 1、简单分支、简单分支语句格式:语句格式:IF条件表达式条件表达式 命令序列命令序列 ENDIF语句功能:当条件为真时,执行语句功能:当条件为真时,执行IF和和ENDIF之间的命之间的命令序列;当条件为假时,执行令序列;当条件为
16、假时,执行ENDIF后面的语句。后面的语句。条件为真条件为真?语句组语句组END IF后面的语句后面的语句YN播放演示播放演示查找并显示查找并显示XSCJ.DBFXSCJ.DBF中的学号为中的学号为021015021015的学生记录的学生记录例如:检查例如:检查DA.DBFDA.DBF中有无工资低于中有无工资低于650650元的记录,元的记录,如果有,则显示该记录的信息,然后显示全部记如果有,则显示该记录的信息,然后显示全部记录。程序如下:录。程序如下: SET TALK OFFSET TALK OFF USE DA USE DA LOCATE FOR LOCATE FOR 工资工资 650.
17、00 650.00 IF .NOT.EOF()IF .NOT.EOF() DISPLAY DISPLAY ENDIF ENDIF LIST LIST SET TALK ON SET TALK ON2、选择分支语句选择分支语句语句格式:语句格式:IF ELSE ENDIF语句功能:当条件为真时,先执行语句功能:当条件为真时,先执行,然后再去执行然后再去执行ENDIF后面的语句;当条件为假时,后面的语句;当条件为假时,先执行先执行,然后再转去执行,然后再转去执行ENDIF后面后面的语句。的语句。END IF后面的语句后面的语句语句行语句行条件为真?条件为真?语句组语句组1语句组语句组2YN例如例如
18、:铁路托运行李,假设每张车票可按每铁路托运行李,假设每张车票可按每Kg0.5元托运元托运50Kg以内的行李,以内的行李,如果超过如果超过50Kg时,超过的部分每时,超过的部分每Kg加价加价0.3元。计算公式为元。计算公式为 X=0.5W (当当W50Kg) X=0.550+0.8(W-50) (当当W50Kg)程序如下:程序如下:SET TALK OFFINPUT 请输入行李的重量为:请输入行李的重量为: TO WIF W=50X=0.5*WELSE X=0.5*50+0.8*(W-50)ENDIF?行李的重量为行李的重量为+STR(W,6,2)+Kg,其运费为:,其运费为:+STR(X,6,
19、2)+元元SET TALK ONRETURNX=3、IF条件语句的嵌套条件语句的嵌套语句格式:语句格式:IF ELSEIF ELSEIF ELSE ENDIF ENDIFENDIF语句功能:此种嵌语句功能:此种嵌套语句可以对复杂套语句可以对复杂情况进行各种判断。情况进行各种判断。说说 明:在这种嵌明:在这种嵌套形式中,要求每套形式中,要求每一层的一层的IF和和ELSE及及ENDIF必须一一对必须一一对应。应。IF-ELSE-ENDIF每个命令各每个命令各占一行,不能在同占一行,不能在同一行出现。一行出现。4、多路分支语句、多路分支语句语句格式:语句格式:DO CASECASE CASE OTH
20、ERWISEENDCASE语句功能:执行此命令时,语句功能:执行此命令时,系统从头依次查看每一个系统从头依次查看每一个CASE的条件表达式,只要的条件表达式,只要某一个条件表达式的值为某一个条件表达式的值为真,就执行该条件下的语真,就执行该条件下的语句组,其他条件下的语句句组,其他条件下的语句组都跳过去,接下来执行组都跳过去,接下来执行ENDCASE后面的语句。后面的语句。OTHERWISE是一个可选是一个可选项,若所有的条件都不成项,若所有的条件都不成立,则执行立,则执行OTHERWISE后面的语句;如果没有可后面的语句;如果没有可选项选项OTHERWISE,则所则所有的条件都不成立,接着有
21、的条件都不成立,接着执行执行ENDCASE后面的语句。后面的语句。条件条件2条件条件1条件条件notherwise语句序列语句序列1语句序列语句序列2语句序列语句序列n语句序列语句序列EndCase后面的语句后面的语句.例如:计算分段函数值:例如:计算分段函数值: 2x-1 (x0) 3x+5 (0=x5)f(x)= x+1 (3=x5) 5x-3 (5=x=10) 程序代码如下:程序代码如下:SET TALK OFFINPUT “输入输入 X 的值:的值:” TO XDO CASE CASE X=0 AND X=3 AND X=5 AND X10 F=5*X-3 OTHERWISE F=7*
22、X+2ENDCASE? ?F(X)=,FSET TALK ONRETURN7.2.2 循环结构程序设计循环结构程序设计1、DO WHILE-ENDDO语句语句语句格式:语句格式:DO WHILE LOOP EXITENDDO语句功能:当条件表达式的值为真时,始终执行语句功能:当条件表达式的值为真时,始终执行语句组;否则执行语句组;否则执行ENDDO后面的语句。后面的语句。播放演示计算播放演示计算N!N!的值的值执行执行ENDDO后面的语句后面的语句执行循环体内各语句执行循环体内各语句修正条件表达式的值修正条件表达式的值条件为真?条件为真?NY例如:以显示方式输出例如:以显示方式输出110的数字
23、。的数字。 SET TALK OFF CLEAR I=1 DO WHILE I =10 ? I I=I+1 ENDDO语句语句I=I+1就是用来修改循环条件的,如果没有这就是用来修改循环条件的,如果没有这一句,一句,I的值永远等于是,上述循环就成为一个死的值永远等于是,上述循环就成为一个死循环。循环。 例如:统计职工表例如:统计职工表ZGDA.DBF中,职称是讲师和副教授,中,职称是讲师和副教授,年龄为年龄为45岁以下的教师人数。岁以下的教师人数。程序如下:程序如下: SET TALK OFF STORE 0 TO C,W USE ZGDA DO WHILE .NOT.EOF( ) DO CA
24、SE CASE (年龄年龄45).and.职称职称=“讲师讲师” W=W+1 CASE (年龄年龄45).and.职称职称=“副教授副教授” C=C+1 ENDCASE SKIP ENDDO ?“讲师讲师45岁以下的人数为:岁以下的人数为:”,W ?“副教授副教授45岁以下的人数为:岁以下的人数为:”,C SET TALK ON RETURN(5)如果循环体中包含)如果循环体中包含LOOP语句,则当遇到语句,则当遇到LOOP时,就时,就结束循环体的本次执行,不再执行其后面的语句,而转到结束循环体的本次执行,不再执行其后面的语句,而转到DO WHILE开始处重新判断条件。开始处重新判断条件。例如
25、:在双重循环中,例如:在双重循环中,LOOP语句在内循环体中,当执行语句在内循环体中,当执行到到LOOP语句时,它跳回到内循环的语句时,它跳回到内循环的DO WHILE的开始处,的开始处,重复对重复对的判断。的判断。 DO WHILE DO WHILE LOOP ENDDO ENDDO例如:将例如:将DA1.DBF表中凡是工资小于表中凡是工资小于700元的增加元的增加100元。元。 SET TALK OFF USE DA2 DO WHILE .NOT.EOF() IF 工资工资=700 SKIP LOOP ENDIF REPLACE 工资工资 WITH 工资工资+100 SKIP ENDDO
26、SET TALK ONRETURN 例如:求例如:求0100之间的奇数之和。之间的奇数之和。 SET TALK OFF X=0 Y=0 DO WHILE X100 EXIT ENDIF S=S+N N=N+1 ENDDO ? “1+2+3+100=”,S CANCEL 运行结果为:运行结果为: 1+2+3+100=50502、FOR-ENDFOR语句语句该语句通常用于实现循环次数已知情况下的循环该语句通常用于实现循环次数已知情况下的循环结构。结构。语句格式:语句格式:FOR 循环变量循环变量=TOSTEP LOOP EXITENDFOR播放演示播放演示统计统计XSCJ.DBFXSCJ.DBF中
27、平均分超过中平均分超过8080分的人数,并显示其记录内容分的人数,并显示其记录内容例如:找出例如:找出ZGDA表中年龄最大的记录号。表中年龄最大的记录号。 SET TALK OFF USE ZGDA MAX=年龄年龄 J=RECCOUNT()() FOR I=1 TO J IF MAXMA MA=A ENDIF IF AMI MI=A ENDIFENDFOR?“最大值:最大值:”,MA?“最小值:最小值:”,MISET TALK ONRETURN3、SCAN-ENDSCAN语句语句语句格式:语句格式:SCANFORLOOPEXITENDSCAN语句功能:语句功能:SCAN的功能是执行时,记录指
28、针自的功能是执行时,记录指针自动、依次地在当前表中范围内满足条件的记录上动、依次地在当前表中范围内满足条件的记录上移动,并对每一条记录执行命令序列。移动,并对每一条记录执行命令序列。说明:说明:的默认值是的默认值是ALL。例如:统计职工科室代码(职工号的第例如:统计职工科室代码(职工号的第1、2位)为位)为02的的男、女职工人数男、女职工人数SET TALK OFFCLEARUSE ZGDASTORE 0 TO M,WSCAN FOR SUB(职工号职工号,1,2)=”02” IF 性别性别“男男” M=M+1 ELSE W=W+1 ENDIFENDSCAN?“男职工人数:男职工人数:”,M?
29、“女职工人数:女职工人数:”,WUSESET TALK ONRETURN例如:在例如:在DA1.DBF表中,查找职称是表中,查找职称是“讲师讲师”的记录,的记录,计算满足条件的记录个数和工资的总和。计算满足条件的记录个数和工资的总和。 SET TALK OFF CLEAR USE DA1 S=0 N=0 SCAN FOR 职称职称=“讲师讲师” S=S+工资工资 N=N+1 ENDSCAN USE ?“记录个数为:记录个数为:”,N ?“工资和为:工资和为:”,S SET TALK ON RETURN 7.3 过程及其调用过程及其调用程序设计时,常常有些运算或处理程序是相同的,程序设计时,常常
30、有些运算或处理程序是相同的,为了避免繁琐,我们可以将重复出现的或能单独为了避免繁琐,我们可以将重复出现的或能单独使用的程序写成可供其他程序调用的独立程序段,使用的程序写成可供其他程序调用的独立程序段,在在VFPVFP中也称为中也称为过程过程。它可以被其他程序文件调用,。它可以被其他程序文件调用,也可以去调用其他的过程。也可以去调用其他的过程。通常,把被其他程序调用的模块称为通常,把被其他程序调用的模块称为子程序子程序,把,把调用其他过程而没有被其他过程调用的模块程序调用其他过程而没有被其他过程调用的模块程序为为主程序主程序。7.3.1 过程的建立过程的建立以特定的命令开始又以特定的命令结束的模
31、块,以特定的命令开始又以特定的命令结束的模块,被放置在程序文件或过程文件中被放置在程序文件或过程文件中 。1、定义过程、定义过程语法格式:语法格式:PROCDURE|FUNCTION RETURNENDPROC|ENDFUNC2、定义过程文件、定义过程文件过程文件也是程序过程文件也是程序文件,建立方法与文件,建立方法与程序文件一样,扩程序文件一样,扩展名也是展名也是.PRG。一个应用系统中可一个应用系统中可以有多个过程文件,以有多个过程文件,但同一时间只能打但同一时间只能打开一个过程文件。开一个过程文件。一个过程文件最多一个过程文件最多可包括可包括128个子过程。个子过程。PROCEDURE
32、PROCEDURE 1 1 RETURNRETURN ENDPROC|ENDFUNCENDPROC|ENDFUNCPROCEDURE PROCEDURE 2 2 RETURNRETURN ENDPROC|ENDFUNCENDPROC|ENDFUNCPROCEDURE PROCEDURE n RETURNRETURN ENDPROC|ENDFUNCENDPROC|ENDFUNC7.3.2 过程的调用过程的调用过程可以存放在程序文件中,也可以存放在过程过程可以存放在程序文件中,也可以存放在过程文件里,存放在不同文件中的过程调用方法也不文件里,存放在不同文件中的过程调用方法也不完全相同。完全相同。1
33、、调用存放在程序文件里的过程、调用存放在程序文件里的过程(1)被所存放的程序文件调用)被所存放的程序文件调用Do 或或 ()(2)被其它命令文件调用)被其它命令文件调用步骤步骤:(1)先打开此程序文件:)先打开此程序文件:SET PROCEDURE TO (2)然后调用其中的过程:)然后调用其中的过程:Do 或或 ()2、调用过程文件中的过程、调用过程文件中的过程步骤步骤:(1)先打开过程文件)先打开过程文件SET PROCEDURE TO ,.ADDITIVE(2)然后调用其中的过程然后调用其中的过程Do 或或 ()说说 明:选用明:选用ADDITIVE选项,则不关闭原先已选项,则不关闭原先
34、已打开的过程文件。打开的过程文件。3、关闭过程文件语句、关闭过程文件语句在主程序结束之前应关闭其调用的过程文件。在主程序结束之前应关闭其调用的过程文件。语句格式语句格式1:SET PROCEDURE TO语句功能:关闭所有打开的过程文件。语句功能:关闭所有打开的过程文件。语句格式语句格式2:RELEASE PROCEDURE ,. 语句功能:关闭个别过程文件。语句功能:关闭个别过程文件。例如:下面是一个模块定义和调用的程序示例。例如:下面是一个模块定义和调用的程序示例。涉及三个文件:程序文件涉及三个文件:程序文件F1.PRG,其中的代码,其中的代码为主程序,另外包含一个过程为主程序,另外包含一
35、个过程P1;程序文件;程序文件F2.PRG作为子程序被主程序调用;过程文件作为子程序被主程序调用;过程文件F3.PRG包含两个过程包含两个过程P2和和P3。*主程序:主程序:F1.PRG?“主程序开始主程序开始”SET PROCEDURE TO F3F2()DO P1?“主程序结束主程序结束”*过程过程P1PROCEDURE P1?“过程过程P1开始开始”?“调用调用P3()”?“返回值:返回值:”,P3()?“过程过程P1结束结束”ENDPROC*子程序:子程序:F2.PRG?“子程序子程序F2开始开始”?“调用调用P2()()”X=P2()?“返回值为:返回值为:”,X?“子程序子程序F2
36、结束结束”RETURN*过程文件:过程文件:F3.PRGPROCEDURE P2RETURNPROCEDURE P3RETURN 1007.3.3参数传递参数传递过程可以接收调用程序传递过来的参数,并能够过程可以接收调用程序传递过来的参数,并能够根据接收到的参数控制程序流程或对接收到的参根据接收到的参数控制程序流程或对接收到的参数进行处理,从而大大提高过程功能设计的灵活数进行处理,从而大大提高过程功能设计的灵活性。性。1、主程序向过程传递参数的命令:、主程序向过程传递参数的命令:命令格式命令格式1:DO WITH ,命令格式命令格式2: WITH ,2 2、在过程中接收参数的命令在过程中接收参
37、数的命令命令格式命令格式1 1:PARAMETERS PARAMETERS ,2,命令格式命令格式2 2:LPARAMETERS LPARAMETERS ,2,例如:按值传递和按引用传递示例。例如:按值传递和按引用传递示例。CLEARSTORE 10 TO X1,X2 DO P1 WITH X1,(,(X2)?“第一次:第一次:”,X1,X2STORE 10 TO X1,X2 P1(X1,X2)?“第二次:第二次:”,X1,X2PROCEDURE P1(X1,X2)PARAMETERS X1,X2STORE X1+10 TO X1STORE X2+10 TO X2RETURN X1+X2END
38、PROC运行结果为:运行结果为:第一次:第一次:20 10第二次:第二次:10 10 7.4 文件操作文件操作7.4.1显示文件目录显示文件目录在计算机的实际操作中,需经常检查磁盘上的文在计算机的实际操作中,需经常检查磁盘上的文件情况及磁盘尚有多少可供用户使用的空间,以件情况及磁盘尚有多少可供用户使用的空间,以便正确地进行操作。为此,便正确地进行操作。为此,VFP提供了显示磁盘提供了显示磁盘文件目录的命令。文件目录的命令。命令格式:命令格式:DIR命令功能:显示磁盘文件目录命令功能:显示磁盘文件目录说说 明:明:(1)只有)只有DIR无任何其他选项,默认显示当前目录无任何其他选项,默认显示当前目录下所有数据表文件。下所有数据表文件。(2)文件名中可以使用通配符)文件名中可以使用通配符 * 和和 ?例如例如:显示显示D盘上的全部数据库表文件目录。盘上的全部数据库表文件目录。 DIR D:例如:显示当前盘上符合通配项条件的文件目录。例如:显示当前盘上符合通配项条件的文件目录。 DIR Z*.DB?例如:显示例如:显示D盘上盘上VFP子目录中子目录中B打头的文件目录。打头的文件目录。 DIR D:VFPB*.*7.4.2复制文件
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 软件设计师核心概念梳理试题及答案
- 2024年兰州市榆中县中医医院招聘笔试真题
- 2024年安徽省市场监管局下属事业单位真题
- 游戏行业会计个人工作计划
- 江苏省常州市钟楼区二十四中学2025年七年级数学第二学期期末质量跟踪监视试题含解析
- 保安工作总结计划广告宣传行业保安工作的广告位保护
- 2024年滨州市环境卫生清运大队招聘笔试真题
- 教育在幼儿园的实践计划
- 风险管理体系中的评估方法试题及答案
- 四川省成都市龙泉驿区2025年七下数学期末教学质量检测试题含解析
- 2024年山东济南先行投资集团有限责任公司招聘考试真题
- 江苏省扬州市邗江区2025年初三中考一模考试英语试题含答案
- 产褥期保健及护理课件
- 陕西省西安市2025届中考模拟英语检测试题(附答案)
- 2025-2030消防车产业规划专项研究报告
- 初中英语教辅电子版单选题100道及答案
- 2025年上海市崇明区中考二模英语试题(含答案)
- 大型心血管造影系统及其DSA质量控制
- 国家中小学智慧教育平台应用指南
- 2024北京丰台区三年级(下)期末数学试题及答案
- 2024-2025学年人教版七年级(下)期中数学试卷(考试范围:第7~9章) (含解析)
评论
0/150
提交评论