版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六部分第六部分 程序设计程序设计一、 程序与程序文件:1.11.1 程序的概念:程序的概念:程序的概念:程序是能够完成一定任务的命令的有序有序集合。1.21.2 程序文件的建立与执行:程序文件的建立与执行:1书写程序的几点说明:.书写程序时,可以使用以下注释语句为程序作注释; NOTE : 只能用在行首 * : 只能用在行首 & : 可以用在行首,也可以用在程序行尾. 程序中每行只能书写一条语句;. 若命令需要书写多行,应在除最后一行之外的其他行结束时使用分号(;) 2程序建立与修改:格式:MODIFY COMMAND ProgramFileName | ?注:如果打开的程序文件不存
2、在,则系统自动建立一个新的空程序文件。3程序的执行:格式:DO ProgramFileName | ?4结束程序的相关指令: CANCEL:终止程序执行,清除所有的私有变量,返回命令窗口; RETURN:结束当前程序执行,返回到调用它的上级程序,若无上级程序则返回到命令窗口。 QUIT:退出 VFP 系统,返回到操作系统1.31.3 简单的输入输出命令:简单的输入输出命令:1. WAIT 语句:格式:WAIT TO Timeout Window说明:一次只能接收一个字符;如果缺省,系统将显示“按任意键继续”2. INPUT格式:INPUT TO 说明:可接收字符型、数值型、日期型、逻辑型数据;
3、输入字符串、日期、逻辑数据时必须定界。3. ACCEPT格式:ACCEPT TO 说明:只接收字符串,而且不能使用定界符;二、 程序的基本结构:2.12.1 顺序结构:顺序结构: 顺序结构程序的执行:按照语句排列先后顺序,一条接一条地执行,它是程序中最基本的结构。 例 1:A=100B=200C=A+B? C2.22.2 选择结构:选择结构:1.1.条件语句:条件语句: 语句格式:IF ELSE ENDIF 例 2. 下面程序的运行结果是:STORE 男 TO XY=LEN(X)+2If Y4? 男Else? 女EndifRETURN2 2多分支语句:多分支语句: 语句格式:DO CASECA
4、SE CASE .CASE OTHERWISEENDCASE逻辑表达式 1逻辑表达式 2Y语句序列 1Y语句序列 2NN逻辑表达式 nOTHERWISEY语句序列 nY语句序列n+1NNCASE 命令的后续命令条件满足?语句组YesNo语句组 1条件满足?YesNo语句组 2 说明: 不管有几个 CASE 条件成立,只有最先成立的那个 CASE 条件对应的命令序列被执行; 如果所有 CASE 条件都不成立,且没有 OTHERWISE 子句,则直接跳出本结构; 例 3. 试编写一显示当前季节程序。Yue=MONTH(DATE() & 获取当前月份DO CASECASE yue=3 and
5、 yue=6 and yue=9 and yue=11Jj=“秋”otherwiseJj=“冬”ENDCASE? “当前季节是:”+jjRETURN2.32.3 循环结构:循环结构:1 1条件循环:条件循环: 语句格式:DO WHILE ENDDO 说明:如果第一次判断条件时条件为假,则循环体将一次都不会被执行;如果循环体包含 LOOP 命令,那么遇到 LOOP 时,就结束循环体的本次循环,后面的语句将被忽略,程序进入下一次循环;如果循环体包含 EXIT 语句,那么遇到 EXIT 时,就结束整个循环。 例 4.编写计算 S=1+2+3+100 的程序s=0i=1DO WHILE i=100 s
6、=s+ii=i+1ENDDO?”s=”,sRETURN2 2步长循环:步长循环: 语句格式:FOR = TO STEP ENDFOR | NEXT循环体部分条件满足?YesNo 说明:如果缺省,其步长为 1; 例 5. 编写计算 S=1+2+3+100 的程序s=0FOR i=1 TO 100s=s+iENDFOR?”s=”,sRETURN3 3扫描循环:扫描循环: 语句格式:SCAN FOR WHILE ENDSCAN 说明:;该循环必须有数据表被打开;循环每进行一次,数据表指针都被自动加 1(隐含执行一次 SKIP) ; 例 6. 显示数据表 sb 中价格大于 10000 的商品名称USE
7、 sbSCAN FOR 价格10000?名称ENDSCANUSE4 4辅助循环语句:辅助循环语句:LOOPLOOP、EXITEXIT三、 多模块程序:3.1 模块的定义与调用:模块的定义与调用:1主程序的概念:调用其它模块而没有被其它模块调用的模块称为主程序。2子模块(子程序)的概念:被其它模块调用的模块称为子模块。3模块的定义格式:PROCEDURE PARAMETERS RETURNENDPROC4模块调用举例:例题 7:设计一个计算圆面积的子程序,并要求在主程序中带参数调用它。主程序:ymj=0INPUT 请输入半径: TO bjDO js WITH bj, ymj?”ymj=”, ym
8、jRETURN子模块:PROCEDURE jsPARAMETERS r, ss=3.1415926*r*rRETURNENDPROC3.2 参数传递:参数传递:1参数传递的格式:格式:PARAMETERS ,,2关于参数传递的几点说明:参数语句必须是过程或自定义函数的第一条语句;参数语句中的参数最好与调用命令中的参数一一对应,但也可以多于调用命令中的参数;3调用模块时参数传递的格式:格式:DO WITH ,, 说明:参数可以是常量,也可以是变量。例题 8:下列程序段执行以后,内存变量 A 和 B 的值是:( ) CLEARPROCEDURE SQ A=10 PARAMETERS X1,Y1B=
9、20 X1=X1*X1DO SQ WITH (A), B &(A)为“值传送”,B为“引用传送”Y1=2*X1?A,BENDPROC A、10 200B、100 200 C、100 20D、10 20 例题 9:下列程序段的输出结果:( )CLEAR PROCEDURE SWAP STORE 10 TO A PARAMETERS X1, X2STORE 20 TO B TEMP=X1SET UDFPARMS TO REFERENCE X1=X2DO SWAP WITH A, (B) X2=TEMP?A,BENDPROC A.10 20B.20 20C.20 10D.10 10 例题 1
10、0:下列程序段执行以后,内存变量 X 和 Y 的值是:( )CLEARPROCEDURE PLUSSTORE 3 TO XPARAMETERS A1, A2STORE 5 TO YA1=A1+A2PLUS( (X), Y)A2=A1+A2?X,YENDPROCA、8 13B、3 13C、3 5D、8 53.3 变量的作用域:变量的作用域:1全局变量: 先定义,后使用,定义语句:PUBLIC ;定义后的默认值为逻辑型,且其值为:.F.;在任何模块中都可使用;2私有变量:在程序中直接赋值使用的变量。不需要使用命令(PUBLIC、LOCAL)进行定义,只需赋值即可,如 a=100;其作用域为建立它的
11、模块及下属程序各模块;一旦建立它的模块运行结束,就自动消失。3局部变量:先定义,后使用,定义语句:LOCAL ;定义后的默认值为逻辑型,且其值为:.F.;只能在定义它的模块内使用,不能在上层及下层模块使用;4屏蔽变量命令:格式:PRIVATE 该指令不建立内存变量,仅仅是屏蔽上层模块中建立的同名变量; 被屏蔽掉的上层模块中的变量,不会受本模块的影响; 当本模块结束运行并回到上层模块时,被屏蔽变量将自动恢复。例题 11:下列程序段的输出结果:a=10PROCEDURE expb=20PRIVATE aDO expa=20? a,bb=30RETURNRETURN屏幕输出:10 305LOCAL 和 PRIVATE 命令比较LOCAL 定义并产生新的变量,如果程序前面有同名变量,则该同名变量将被屏蔽;PRIVATE 仅屏蔽上层同名变量,并不产生新变量。被 LOCAL 屏蔽掉的变量,在本模块以外均可见;被 PRIVATE 屏蔽掉的变量在本模块及子模块均不可见,只有回到上层模块
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 未来科技发展趋势及其对商业的影响
- 面向未来的小学作文教学创新与实践探索
- 节能型照明方案在酒店建筑设计中的应用分析
- 餐厅空间的美学设计与餐饮体验
- 科技教育的新篇章小学科学实验室教育探讨
- 科技驱动的实验教学实践创新教育模式探索
- 校园生态文化建设与环境保护的紧密结合
- 教学督导在提升小学教师教学能力中的作用
- 教育技术下的小学数学教学策略探讨
- 构建自我认知框架促进学业成功
- 安全生产网格员培训
- 小学数学分数四则混合运算300题带答案
- 林下野鸡养殖建设项目可行性研究报告
- 心肺复苏术课件2024新版
- 2024年内蒙古呼和浩特市中考文科综合试题卷(含答案)
- 大型商场招商招租方案(2篇)
- 2024年山东泰安市泰山财金投资集团有限公司招聘笔试参考题库含答案解析
- 医保按病种分值付费(DIP)院内培训
- 近五年重庆中考物理试题及答案2023
- 全科医医师的临床诊疗思维
- (七圣)七圣娘娘签诗
评论
0/150
提交评论