第6章_结构化程序设计[精选].pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章_结构化程序设计[精选]

*主程序 … … Do 子程序1 With X, Y, Z *子程序1 … Return Parameters|Lparameters M,N,P 实际参数 形式参数 6.6.2 过程子程序及其调用 例 对于没有形参语句(Parameters或Lparameters)的过程子程序,调用时Do语句中不能写With短语 6.6.2 过程子程序及其调用 参数传递方式 可以利用参数在主程序与子程序之间进行传递数据。在调用子程序时,实参个数不得超出形参个数;当实参个数少于形参个数时,多余的形参初值为.F. 。 可以指定最多27个形参 值方式传递: 只能由实参传递给形参值的单向传递值方式。 调用子程序时,将实参值传递给对应的形参;当执行子程序结束时,形参变化后的值不能回送给实参。 引用方式传递:实参与形参之间双向传递值的方式。 调用子程序时,将实参值传递给对应的形参;当执行子程序结束时,形参变化后的值回送给实参。 6.6.2 过程子程序及其调用 Dimension X(3,3),Y(10) X(3,2)=3 Y(7)=VFP Do P1 With X,Y ?X(3,2),Y(7) Parameters M(2),N(2,3) ?M(3,2),N(7) M(3,2)=2*M(3,2)-1 N(7)=N(7)+”中文版” Return 形参是数组声明时,对应实参必须是数组名。实参与形参之间按引用方式传递数据。 过程子程序调用的参数传递规则 系统自动将形参转换成与实参等价的数组,而与形参数组声明的维数和元素个数无关 输出:3 VFP 输出:5 VFP中文版 过程子程序调用的参数传递规则 实参是数组名时,实参与形参之间按引用方式传递数据。 Dimension X(3,3),Y(10) X(3,2)=3 Y(8)=Good Do P2 With X,Y ?X(3,2),Y(8) Parameters M,N ? M(3,2),N(8) M(3,2)=4 N(8)=Bad Return 系统自动将形参转换成与实参等价的数组 输出: 3 Good 输出: 4 Bad 过程子程序调用的参数传递规则 当实参是简单内存变量(不含数组元素)时,实参与形参之间按引用方式传递数据。 Dimension M(5) Store 4 To M,N,K Do P3 With M(3),Sqrt(N),2*N,K ? M(3),Sqrt(N),2*N,K Parameters X2, X3, X4, X5 X2=X2+1 X3=X3+1 X4=X4+1 X5=X5+1 Return X2、 X3、X4 、X5的值分别是: 4 2.00 8 4 按值方式传递 按引用方式传递 输出: 4 2.00 8 5 当实参是表达式(包括常数、数组元素和函数)时,实参与形参之间按值方式传递数据。 *主程序 … … S=WJM( X, Y, Z ) *WJM PARAMETERS M, N, P 语句序列 RETURN 表达式 6.6.3 函数子程序及其调用 参数传递 表达式的值作为函数(返回)值 实际参数 形式参数 没有形参语句(Parameters或Lparameters)的函数子程序,调用时在函数子程序名后加空括号。 改变参数传递规则的命令: Set Udfparms To Value | Reference 6.6.3 函数子程序及其调用 参数传递规则 系统默认函数子程序调用按值方式传递值 是默认值。实参与形参之间按值方式传递数据,要求函数子程序中的形参不能是数组声明 按引用方式传递数据,其规则与过程子程序调用的参数传递规则相同。 此命令仅针对函数子程序调用有影响。 6.6.4 过程子程序与函数子程序区别 在编写程序方面: 函数子程序通常用Return 表达式语句返回到主程序 过程子程序通常用Return [To Master]或Retry语句返回到主程序或主控程序。 在调用子程序方面, 用函数形式调用函数子程序,使之成为表达式的一部分; 用Do语句调用过程子程序,使之成为程序中的一条语句。 如:SCAL(1,M) 如: Do INDATA 6.8 变量的作用域 所谓变量的作用域就是变量的作用范围,即变量在多大范围内有效。根据变量的作用域,VFP将变量分为公共变量、私有变量和局部变量3种。 在整个程序(包括主程序、子程序和对象事件过程等)中都有效的变量是公共变量。 在命令窗口中定义的简单变量或数组变量都是公共变量。 此外,用Public语句也可以

文档评论(0)

dart004 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档