VF求1到10阶乘和

老师说过程文件产生俩个prg文件,内部产生一个prg,必须要分开做,怎么做呀?

VFP内部过程就是过程文件:‍

把以下两段代码写入同一个文件中,保存为JCH.PRG文件,即形成一个过程文件。

**保存为JCH.PRG文件

jch=0

jcs=0

FOR l=1 TO 10

 DO jc WITH l,jcs  &&调用子程序,并通过传递参数实现计算阶乘

 jch=jch+jcs

ENDFOR

?"10 的阶乘为:",jcs,"10 以内各自然数的阶乘和为:",jch

PROCEDURE jc

PARAMETERS n,jcs      &&接收主程序传递来的参数

jcs=1

FOR m=1 TO n

 jcs=jcs*m

ENDFOR 

RETURN jcs

 

部过程方法,主程序调用外部程序或者使用set proc to 指定的过程文件。此例中,我们将主程序(上面第一段代码)保存成JCH.PRG文件。

**保存为JCH.PRG文件
jch=0
jcs=0
FOR l=1 TO 10
 DO jc WITH l,jcs  &&调用子程序,并通过传递参数实现计算阶乘
 jch=jch+jcs
ENDFOR
?"10 的阶乘为:",jcs,"10 以内各自然数的阶乘和为:",jch

另建立一个JC.PRG文件。如下:

**保存为JC.PRG文件

PARAMETERS n,jcs      &&接收主程序传递来的参数

jcs=1

FOR m=1 TO n

 jcs=jcs*m

ENDFOR 

RETURN jcs

但如果是专门的过程文件(里面有多个过程,供其他程序调用的话),那么过程文件的文件名可以任意设置,我假设保存为"过程.prg"。那么在主程序中调用过程前加一行代码:

SET PROC TO 过程.prg

 以下为"过程.prg":

PROCEDURE jc
PARAMETERS n,jcs      &&接收主程序传递来的参数
jcs=1
FOR m=1 TO n
jcs=jcs*m
ENDFOR 
RETURN jcs


PROCEDURE xxxx
xxx
xxx
XXX
RETURN 
等等多个过程。

 以我所知,只能帮你到这里了。

来自:求助得到的回答
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答