计算机二级 第6章 Visual FoxPro程序设计基础

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第6章VisualFoxPro程序设计基础第6章6.1程序与程序文件6.1.1程序的概念程序是能够完成一定任务的命令的有序集合。程序方式的特点:可以利用编辑器方便地输入、修改和保存程序程序文件一旦建立,可以被多次运行,一个程序可以调另一个程序在程序中可以出现在命令窗口中无法使用的命令和语句*功能说明:求圆的周长和面积*文件名:例2-40.PRGclear&&清除VisualFoxPro主窗口或当前用户自定义窗口里的全部内容*设置半径r=3*依次计算周长和面积l=2*PI()*rs=PI()*r^2*输出计算结果?周长=,l?面积=,sRETURN1、从形式上看,VFP的程序是由若干有序的命令行组成,且满足下列规则:(1)一个命令行内只能写一条命令,命令行的长度不得超过2048个字符,命令行以回车键结束。(2)一个命令行可以由若干个物理行组成,即一条命令在一个物理行内写不下时,可以分成几行。换行的方法有两种:一种是在物理行的末尾加符号“;”,表示下一行输入的内容是本行的继续;另一种是系统自动换行,即输入程序时,只管逐条命令输入,无需考虑本条语句是否超过屏幕行宽的最大限度,当输入的语句超过屏幕的最大行宽时,系统自动换行。输入时只需在一行结束时按回车键,通知系统本命令行输入完毕。(3)为便于阅读,可以按一定的格式输入程序,即一般程序结构左对齐,而控制结构内的语句序列比控制结构的语句缩进若干格。2、从功能上看,程序可以分为三个部分:第一部分是程序的说明部分,在本例程序中是前几行,一般用于说明程序的功能、文件名等需要说明的有关信息。第二部分是进行数据处理的部分。通常任何一个有意义的程序,总是要有一些原始数据,否则,这个程序就没有处理对象。同样,程序运行的结果也有必要显示或打印出来,否则,用户将不知道程序干了一些什么。因此,第二部分程序常包括下列三个部分,依次为:提供原始数据部分、数据处理部分、输出结果部分。第三部分是程序的控制返回部分。它控制程序返回到调用该程序的调用处。6.1.2程序文件的建立1.程序文件建立与修改菜单方式命令方式:MODIFYCOMMAND文件名打开程序编辑窗口在程序编辑窗口中输入程序代码用Ctrl+W存盘退出编辑窗口,或单击程序编辑窗口上的【关闭】按钮,在弹出的对话窗口中确定存盘,生成例2-40.prg文件。注释命令:NOTE|*注释字符串&&注释字符串上述命令不作任何操作,只是注释标记,用于说明程序或命令的功能等。注释内容不需要用定界符定界,执行时也不显示。注释信息如果在一行内没有写完,换行时也必须再写注释命令。NOTE或*是用于整行注释的,因此,它必须写在每一个注释行的开头;而&&命令是用于注释一行的部分内容的,因此,它可以写在行中(命令的尾部、注释信息的头部),这是程序中唯一可以在一个逻辑行写二个语句的命令。6.1.3程序文件的执行2.执行程序文件菜单方式命令方式:DO文件名,将执行到文件尾或到以下命令CANCEL、DO、RETURN、QUIT使用DO命令执行文件时,如不跟文件扩展名,将依次查找.exe、.app、.fxp、.prg文件。6.2.1输入命令1.INPUT命令格式:INPUT[字符表达式]TO内存变量可输入常量、变量或表达式,格式必须符合语法要求,且必须输入值。例2-40-1.PRG2.ACCEPT命令格式:ACCEPT[字符表达式]TO内存变量只接收字符串,且字符串不需要定界符,可不输入直接回车。例2-40-3.PRG3.WAIT命令格式:WAIT[字符表达式]TO内存变量[WINDOWS[AT行,列][NOWAIT][CLEAR|NOCLEAR][TIMEOUT数值表达式]。例2-40-2.PRG6.2程序中的常用命令6.2.2输出命令1.?|??命令格式:?|??[表达式1][,表达式2][,…]功能:将表达式的值显示输出说明:?输出前要换行从下行开始输出,??输出前不换行从当前光标处输出。2.MessageBox()函数格式:MESSAGEBOX(提示字符串)功能:弹出提示框显示提示字符串内容说明:提示字符串必须是字符串界定符6.2.3其他命令1.CLEAR命令格式:CLEAR功能:清除主窗口区中的内容2.RETURN格式:RETURN功能:结束当前程序,返回到调用程序的上级程序,如无上级则返回命令窗口3.CANCEL格式:CANCEL功能:终止程序执行并关闭所有打开的文件,返回命令窗口4.QUIT功能:退出VFP返回Windows操作系统6.3程序的基本结构程序结构是指程序中命令或语句执行的流程结构。有顺序结构、选择结构和循环结构三种基本结构。6.3.1顺序结构顺序结构是最简单的程序结构,它按命令在程序中出现的先后次序依次执行。但是绝大多数问题仅用顺序结构是无法解决的,还要用到选择结构和循环结构。clearr=3l=2*PI()*rs=PI()*r^2?周长=,l?面积=,sRETURN语句序列1……语句序列n6.3.2选择结构1.简单形式的条件语句语句格式:IF条件表达式语句序列ENDIF条件语句序列6.3.2选择结构2.一般形式的条件语句语句格式:IF条件语句序列1ELSE语句序列2ENDIF条件语句序列1语句序列2真假6.3.2选择结构3.多分支语句语句格式:DOCASECASE条件1语句系列1CASE条件2语句系列……CASE条件n语句系列n[OTHERWISE语句系列]ENDCASE条件1条件2条件nOTHERWISE语句系列1语句系列2语句系列n语句系列真假真假真假真6.3.3循环结构1.DOWHILE-ENDDO语句语句格式:DOWHILE条件命令序列ENDDO条件循环体真假6.3.3循环结构1.DOWHILE-ENDDO语句语句格式:DOWHILE条件命令序列ENDDO条件真假循环体LOOPEXIT6.3.3循环结构FOR-ENDFOR语句语句格式:FOR循环变量=初值TO终值[STEP步长]循环体[LOOP][EXIT]ENDFOR|NEXT6.3.3循环结构SCAN-ENDSCAN语句语句格式:SCAN[范围][FOR条件1][WHILE条件2]循环体[LOOP][EXIT]ENDSCAN6.4多模块程序设计6.4.1模块的定义1.模块及其定义PROCEDURE|FUNCTION过程名命令序列[RETURN[表达式]][ENDPROC|ENDFUNC]过程保存在称为过程文件的单独文件里。过程文件包含的过程数量不限。过程文件的建立仍然使用MODIFYCOMMAND命令,文件的扩展名仍为.PRG。过程也可以保存在命令文件里,但必须放在命令文件正常代码的后面。这样,一个命令文件中就可以包含许多模块。6.4.2模块的调用2.模块的调用格式1:使用DO命令DO文件名|过程名格式2:在名字后加一对小括号文件名|过程名()要调用过程文件中的过程,首先要打开过程文件SETPROCEDURETO过程文件1[,过程文件2[,……]][ADDITIVE]6.4.2模块的调用2.模块的调用当过程文件中的过程不再需要调用时,应该及时关闭过程文件,释放所在的内在格式1:SETPROCEDURETO格式2:RELEASEPROCEDURE过程文件1[,过程文件2[,……]]6.4.3参数传递模块程序可以接收调用程序传递过来的参数,并能够根据接收到的参数控制程序流程或对接收的参数进行处理,从而大大提高模块程序功能设计的灵活性。接收参数的命令有PARAMETERS和LPRAMETERS格式1:PRAMETERS形参1[,形参2[,……]]格式2:LPRAMETERS形参1[,形参2[,……]]参数传递示例:例2-496.4.4变量的作用域全局变量PUBLIC内存变量表全局变量一旦建立就一直有效,即使程序运行结束返回到命令窗口也不会消失局部变量LOCAL内存变量表只能在建立它的模块中使用,不能在上层或下层模块中使用私有变量没有通过PUBLIC和LOCAL命令声明的变量私有变量的作用域是建立它的模块及其下层模块中使用。全局变量、私有变量、局部变量及其作用域示例隐藏变量PRIVATE内存变量列表并不建立内存变量,作用是隐藏指定的在上层模块中可能已经存在的内存变量,使得这些变量在当前模块程序中暂时无效。设计一下按不同幼儿年龄服药的程序,年龄变量为AGE,每天服药次数COUNT,每次服药量MOUNT。提示:使用多分支语句.年龄次数服药量54次/天每次1片104次/天每次2片=103次/天每次2片有一张厚0.5毫米,面积足够大的纸,将它不断对折.问对折多少次后,其厚度可达珠穆朗玛峰的高度(8848米)提示:使用循环结构.设计一个登录程序,当用输入用户名为ADMIN,且密码为SCCTCM时,提示输入正确,否则提示输入错误,并提示重新输入,但重新输入不得超过3次.提示:使用条件选择和循环语句.

1 / 28
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功