版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1.1、VF程序文件的建立与设计、2。程序文件的建立与设计,Visual FoxPro程序文件,是一个带有()的文本文件。PRG)扩展。任何可以创建和编辑文本文件的工具都可以创建和编辑可视化FoxPro程序文件。这些文本编辑工具可以是由可视化FoxPro系统提供的内部编辑器,也可以是其他常用的文本编辑软件。在文本编辑环境中,不仅可以输入和修改程序文件,还可以实现字符串的搜索、替换、删除和编辑功能。有两种方法可以创建和编辑程序文件: 1。命令模式修改命令程序文件名2。菜单模式打开文件菜单,选择新建;在“新建”窗口中,选择“程序”,然后选择“新建文件”;在“程序文件”编辑窗口中,输入程序文件并保存
2、。此时,创建程序文件的操作结束。4、调用程序文件,即运行程序文件,这是建立程序文件的最终目的。在Visual FoxPro系统中,调用程序文件的方法有很多,这里只介绍其中的两种。1.命令模式在命令窗口中,输入以下命令,程序文件将被调用。命令格式:执行程序文件名,5,调用程序文件,2。在菜单模式下调用程序文件,操作方法如下:(1)在Visual FoxPro系统主菜单下,打开“程序”菜单,选择“运行”。(2)在“运行”窗口中,输入被调用程序的文件名。程序的基本结构Visual FoxPro系统提供的命令丰富而强大。通过将这些命令和编程语句有效地组织在一起,就形成了实现某一功能的程序。Visual
3、 FoxPro系统的程序有两个特点:一是程序控制流模式由三个基本结构组成:顺序、分支和循环。另一个是面向对象的可视化结构化程序模块,它也由各个模块中的程序控制流组成。程序的基本结构和常用的控制结构如下:1序列结构序列结构是程序执行时根据程序中语句的编写顺序依次执行的命令序列。Visual FoxPro系统中的大多数命令都可以作为序列结构中的语句使用。2分支结构分支结构是根据程序执行时的不同情况选择和执行不同的程序语句,从而解决许多选择和传递的问题。8、3循环结构可以使某些语句或程序段重复执行几次。如果某些语句或程序段需要在固定位置重复,使用循环是最佳选择。在许多应用程序中,有些程序段需要多次重
4、复执行。这些节目片段不是固定的位置,而是分散在节目的许多位置。它们可以从嵌入式程序中分离出来,形成一个独立的程序序列,然后转移到程序中,实现不同位置的重复操作。这增强了程序的可读性和模块化。我们把这个具有独立功能并且可以被其他程序调用的程序序列称为过程。程序的基本结构,10,分支结构单向分支,分支结构有以下三种形式:1单向分支单向分支语句,即根据用户设置的条件表达式的值,它决定一个操作是否被执行。(1)语句格式:IF条件表达式命令行序列ENDIF (2)语句函数:语句首先计算条件表达式的值,当条件表达式的值为真时,执行命令行序列;否则,执行ENDIF之后的第一个命令。11,分支结构双向分支,2
5、双向分支双向分支语句,即根据用户设置的条件表达式的值,选择两个操作之一来执行。(1)语句格式:IF条件表达式命令行序列1 ELSE命令行序列2 ENDIF,12,双向分支结构;(2)语句函数:语句首先计算条件表达式的值,当条件表达式的值为真时,执行命令行序列1中的命令;否则,执行命令行序列2中的命令;ENDIF之后的第一个命令将在命令行序列1或命令行序列2执行后执行。13,分支结构多向分支,3多向分支语句,即根据多个条件表达式的值,选择多个操作中的一个相应执行。(1)语句格式:DO CASE CASE条件表达式1命令行序列1 CASE条件表达式2命令行序列2 CASE条件表达式N命令行序列N否
6、则命令行序列N 1 ENDCASE,14,分支结构多方向分支;(2)语句函数:该语句根据n个条件表达式的给定值,从n个命令行序列中选择一个执行。当所有案例中的条件表达式的值都为假时,如果有否则项,执行命令行序列N 1,然后在ENDCASE之后执行第一个命令;否则,在ENDCASE之后直接执行第一个命令。15,使用分支语句时需要注意的几点:(1)必须成对使用IF ENDIF和DO CASE ENDCASE,并且在DO CASE和第一个CASE条件表达式之间不应该有命令。(2)条件表达式可以是各种表达式或函数的组合,其值必须是逻辑值。16,使用分支语句时需要注意的几点:(3)命令行序列可以由一个或
7、多个命令组成,也可以是由条件控制语句组成的嵌套结构。(4)DO CASE ENDCASE命令最多只能执行一个命令行序列。当多个案例项的条件表达式值为真时,只执行条件表达式值为真的第一个命令行序列,然后执行ENDCASE之后的第一个命令。17,循环结构是“当”型循环。常用的循环语句有以下三种形式:1 .“当”类型循环控制语句“当”类型循环控制语句,即根据条件表达式的值,确定循环中语句的执行次数。(1)语句格式:DO WHILE条件表达式命令行序列LOOP/EXIT ENDDO,18,循环结构“当”类型循环;(2)语句函数:该语句通过条件表达式的值控制循环。执行语句时,反复判断条件表达式的值,当条
8、件表达式的值为“真”时,执行命令行序列;否则,结束循环并在ENDDO之后执行第一个命令。19,循环结构 counting 循环,2 counting 循环控制语句 counting 循环控制语句,即根据用户设置的循环变量的初始值、最终值和步长,确定循环体中语句的执行时间数据。(1)语句格式:for loop变量loop变量初始值TO loop变量最终值STEP loop变量STEP命令行序列LOOP/EXIT ENFORNEXT,20,循环结构“计数”型循环;(2)语句函数:该语句使用循环变量来控制命令行序列的执行时间。执行语句时,首先将循环变量的初始值赋给循环变量,然后判断循环变量是否大于或
9、小于循环变量的最终值,如果结果为“真”,则结束循环,并在ENDFOR后执行第一个命令;否则,执行命令行序列,并根据循环变量步长自动增加或减少循环变量,然后重新判断循环变量的当前值是否大于或小于循环变量的最终值,直到结果为真。21,循环结构的指针循环,3 指针循环控制语句的指针循环控制语句,即根据用户在表中设置的当前记录指针,确定循环体中语句的执行子数据。(1)语句格式:条件表达式1的扫描范围WHILE条件表达式2命令行序列LOOP/EXIT ENDSCAN,22,循环结构“指针”类型循环;(2)语句功能:语句在指定范围内,数据记录指针用于控制循环次数。执行该语句时,首先判断函数e of()的值
10、,如果为真,则结束循环;否则,结合条件表达式1或条件表达式2,执行命令行序列,将记录指针移动到指定范围和条件内的下一条记录,并再次判断函数e of()的值,直到函数EOF()的值为真,结束循环。23,使用循环语句时应注意的几点,(1)必须成对使用“做同时”和“结束”语句、“FOR”和“ENDFOR”、“SCAN”和“ENDSCAN”。(2)命令行序列可以是任何FoxPro命令或语句,也可以是循环语句,即多循环。(3)循环变量应该是数字内存变量或数组元素。24、(4)EXIT和LOOP命令嵌入在循环体中,可以改变循环的数量,但不能单独使用。退出的功能是跳出循环,在结束、结束和结束扫描后执行第一个
11、命令;循环的功能是回到循环的开始,再次判断“条件”,相当于执行一次ENDDO、ENDFOR和ENDSCAN命令,它可以改变命令行序列中某些命令的执行时间。退出和循环可以出现在命令行序列的任何地方。在Visual FoxPro系统中,程序是一个独立存储在磁盘上的程序文件,用户在使用循环语句时,可以通过文件名来调用和执行它。为了达到一个用户的目的,它很可能由多个程序来完成。1.调用过程语句,即执行现有过程。(1)语句格式:执行过程名(2)语句功能:执行以过程名命名的过程。26,程序,2。过程返回语句,即返回到调用过程的地方。(1)语句格式:RETURNTO MASTERTO过程名(2)语句函数:将
12、控制权返回给调用程序中调用命令的下一条语句。27,简单输入/输出命令,1接受命令格式:接受到功能在程序执行期间,用户交互输入的内容作为字符串分配给指定的内存变量。该命令只接受字符数据,输入字符串不需要分隔。28,简单输入输出命令,2输入输出命令格式:输入到功能在程序执行过程中,用户交互输入的内容被分配给指定的内存变量。可以输入字符型、数字型、逻辑型、日期型和日期时间型的数据,可以是常量、变量、函数或表达式等形式。29,简单输入/输出命令,3等待命令格式:等待至功能显示提示信息并暂停程序执行,直到用户按下任何键或单击鼠标继续执行程序。如果选择了“至”选项,输入的单个字符将被指定为字符数据;如果用
13、户按回车键或单击鼠标,则的值为空字符串。如果省略所有选项,屏幕显示默认提示信息“输入任意键继续”,30,简单输入输出命令,三种输入命令的异同。ACCEPT命令只能接受没有分隔符的字符数据,按回车键完成输入;WAIT命令只能输入一个字符,没有分隔符,输入后不需要按回车键;输入命令可以接受数字类型、字符类型、逻辑类型、日期类型和日期时间类型的数据。数据形式可以是常量、变量、函数和表达式。如果是字符串,则需要分隔符。输入后,按回车键完成。31,简单输入和输出命令,4定位输入命令命令:SAY | GET READ函数在屏幕上指定的行和列位置输入数据。32,简单输入/输出命令,描述命令中的选项描述如下:
14、它指的是屏幕窗口的位置。SAY给出提示信息。获取变量的值。GET子句必须用READ命令激活。使用前必须定义GET。例如,首先应用具有多种宽度的空间,33,内存变量的范围-全局变量,1全局变量是指在所有程序模块中有效的内存变量。在程序或过程中定义全局变量的语句是:格式公共示例:公共X,Y X,Y显示并定义为全局变量Z=0 Z变量是隐式定义的?Y,Z Y=.F. Z=0,变量的初始值为. f .34,内存变量的范围-全局变量,描述 (1)定义多个变量时,每个变量名称用逗号分隔;(2)由公共语句定义的存储器变量可以在程序执行期间在任何级别的程序模块中使用;(3)变量定义语句应该放在使用该变量的语句之
15、前,否则会出现错误;35,图表:主程序:X=0,子程序:x,子程序:局部变量指的是在创建它的程序和这个程序调用的子程序中有效的内存变量。定义为程序中未显示的全局变量的内存变量被视为局部变量。局部变量可以用PRIVATE来描述。命令格式为:Format PRIVATE,37,内存变量范围-局部变量,Description(1)PRIVATE语句描述的内存变量只能在本程序及其下属进程中使用,退出程序时变量自动释放;(2)用PRIVATE语句描述的过程中的局部变量可以与上层调用程序中出现的内存变量同名,但它们是不同的变量。在被调用的进程中,上层进程中同名的变量将被隐藏。也就是说,如果在从属程序中再次
16、使用PRIVATE显示定义,它将是一个同名的变量,并且该变量的值不能返回给主程序。38,图表:子程序专用X=1,主程序X=0,39,内存变量的范围-局部变量,3局部变量局部变量指的是一个只能在创建它的程序中有效的内存变量。也就是说,局部变量不能传递给它的上级或下级程序。命令的格式是:格式 LOCAL,40,图形:子程序LOCAL X=1,主程序:X=0,重要提示:所有在过程中没有解释的记忆变量都被系统认为是局部变量。这种方法称为隐式定义。您也可以使用特殊命令来定义局部变量,即显式定义。在同一过程中,隐式或显式定义的局部变量的范围完全相同。主程序或上级进程中私有语句未定义的局部变量在下级进程中未明确定义,其新值可返回给主程序或上级进程;如果它在从属进程中被明确定义,即被定义为一个同名的变量,那么它的新值就不能返回到主程序中。锻炼,MAIN。公共A=1 B=2?做潜艇吗?甲、乙、丙、丁、丁。公共碳碳=11碳=12碳=13碳=14?a,b,c,dreturn,a=11,b=12,c=13,d=14,a=11,b=2,c=13,d=,43,带参数的过程调用,1。用参数调用过程语句,即执行现有过程并调用格式:用语句函数调用子程序名:执行以过程名命名的过程。这里的参数表也称为参数表。参数是常量、赋值变量或数值表达式。44,带有参数的过程调
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医院调剂室工作制度
- 医院药剂师工作制度
- 十二项保密工作制度
- 单位水计量工作制度
- 卫生科日常工作制度
- 乌兰察布市2026普通专升本考试-大学英语提分模拟卷(含答案)
- 厨房洗刷间工作制度
- 县委值班室工作制度
- 县林长巡林工作制度
- 县调诉对结工作制度
- 2026四川宜宾汇发产业新空间投资有限公司第一批员工招聘5人备考题库及答案详解(各地真题)
- 2026广东佛山市公安局三水分局警务辅助人员招聘49人(第一批)考试参考试题及答案解析
- 2026年江苏省南京第五高级中学高考地理一模试卷
- 2026年人教版八年级语文下册第四单元 阅读综合实践 大单元作业设计 教学课件
- 2026年春季统编版新教材八年级下册道德与法治教学计划
- 2026年从事基础研究人员长周期管理 节点奖励:科技人员激励双机制
- 2026年宁夏葡萄酒与防沙治沙职业技术学院单招职业技能考试题库附参考答案详解(a卷)
- 2026年国家义务教育质量监测小学德育模拟测评估考试试题+答案
- 2023化学检验员岗位技能标准
- 2026年4月全国自考试题及答案《国民经济统计概论》
- 城市运行管理服务平台 管理监督指标及评价标准
评论
0/150
提交评论