版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第7章Visual FoxPro程序通过在上述的命令窗口中输入命令,或者选择菜单执行Visual FoxPro命令,交互执行。 还可以通过编程调用Visual FoxPro命令来执行更复杂的任务。 7.1基本知识-7.1.1程序的概念,Visual FoxPro的目的是使用该命令组织、处理数据并完成特定任务。 如果在单一的指令窗口中单独输入并执行指令,则容易复杂且容易发生错误,特别是在需要反复执行指令的情况下或者所包含的指令多的情况下,完全无法应用交互方式,在指令组中必须实现这里程序是能完成一定任务的命令的有序集合。 此命令集存储在称为程序文件或命令文件的文件中。 程序运行时,程序中包含的命令
2、按照一定的顺序自动运行。 与命令方式相比,主要具有可以使用编辑器输入、修改、保存程序的优点。 可以通过多种方式多次运行程序。 一个程序可以调用另一个程序。 7.1基本知识-7.1.1程序的概念,【例7.1】从d 3360 VFP _ example XJ.DBF中选出1984年出生的同学,表示该年出生同学的姓名、性别、住址、入学的程序代码, 机器会话清除画面Use d:VFP_examplexj.dbf打开数据表List xm,xb, 显示符合jtzz、rxcj for year(csrq)=1984条件的记录打开Use关闭数据表Set talk on人机会话,显示7.1基本知识-7.1.1程
3、序概念、7.1.1程序概念、 注意:指令注释: SETTALK ONOFF :许多数据处理命令(SUM、AVERAGE等)在运行时返回有关运行状态的信息,并显示在Visual FoxPro主窗口、状态栏或用户定义窗口中另一方面,SET TALK OFF禁止执行状态信息的显示,SET TALK ON允许执行状态信息的显示。 程序代码在程序文件中进行描述,在表单设计器和类设计器的事件和方法代码窗口、在报表设计器和菜单设计器的处理代码窗口中显示的命令窗口中,也与执行程序相同具体而言,选择要在命令窗口中执行的多个命令。 按下ENTER键,或右键单击显示的快捷菜单中选择【执行选择区域】后,1 .程序的制
4、作和修改(1)程序文件的制作和修改,通过调用系统内置的文本编辑器来进行。 注:程序文件的默认扩展名为prg。 如果指定其他扩展名,则在打开或运行程序文件时显示指定的扩展名。 7.1.2程序的创建和运行,(2)打开程序文件进行修改的步骤:从“文件”菜单中选择“打开”命令,显示“打开”对话框后,从“文件类型”列表框中选择“程序”编辑修改从【文件】菜单中选择【保存】命令,或者按下CTRLW修改键保存文件,但要放弃此次,从【文件】菜单中选择【还原命令】命令,或者按下ESC键。 (3)用指令方式制作、修改程序文件:形式: MODIFY COMMAND文件路径作用:执行该指令后,系统首先检索磁盘文件,如果
5、指定文件存在则打开修改,否则指定了文件名的程序注:格式中的文件路径可以省略。 如果未指定扩展名,则会自动添加默认扩展名prg。 2 .当创建用于执行程序文件的程序文件时,其可以以各种方式被执行多次。 具体的方法是,(1)菜单方式:从【程序】菜单中选择【执行】指令,显示“执行”对话框。在“文件类型”列表框中选择“程序”,在“文件列表”框中选择要运行的文件,然后单击“运行”命令按钮。 (2)指令方式:格式: do文件路径的作用:执行指定的文件。 此命令可以在命令窗口中运行,也可以在程序文件、表单和菜单事件中运行。 这样就完成了对程序的调用。 程序文件运行后,文件中包含的命令依次运行,直到所有命令运
6、行为止,或者CANCEL :结束程序的运行,清除所有私有变量,返回到命令窗口。 DO :转移到别的程序的执行。 RETURN :结束当前程序的执行,返回调用它的上位程序,如果没有上位程序则返回指令窗口。 quit :退出visual FoxPro系统,进入操作系统。 Visual FoxPro程序可以通过编译、连编生成具有不同扩展名的不同目标代码文件,在使用DO命令执行程序文件时,如果没有指定扩展名, 将该程序文件的源代码或目标代码文件按以下顺序排列为. exe(Visual FoxPro可执行文件).app(Visual FoxPro应用程序文件).fxp(Visual FoxPro编译文件
7、) . prg(Visual FoxPro源程序文件). 注:使用DO命令执行查询文件、菜单文件时,必须对文件名附加扩展名(.qpr、 mpr )。 7.2顺控结构程序设定修改、程序的基本结构是指程序中的指令和句子执行的进程结构,基本结构有顺控结构、选择结构、循环结构3种。 序列结构是最简单的程序结构,按指令出现在程序中的顺序执行。7.2.1输入命令-INPUT,1,输入命令(1)INPUT命令格式: input字符表达式TO内存变量的作用:此命令等待用户从键盘输入数据,用户可以输入任何有效的表达式当您按enter键结束输入时,系统会提醒您:如果您选取以字元为基础的表示式,则该表示式的值会首先
8、显示为提示讯息。 必须输入数据。 输入的数据可以是常数、变量或公式,按enter键结束输入。 输入字符串时必须输入分隔符(“闪秀婧”等),输入逻辑型常数时必须输入圆分隔符(.t . f.),输入日期时间型常数时必须输入大括号(2004-12-25等)。【例7.3】从键盘输入x的值,求出Y3X5的值。 程序代码:请输入清除输入的设置任务值: TO X Y=3*X 5? y,Y set talk on,7.2.1输入命令-input,【例7.4】从键盘输入名称,从D:VFP_examplexj.dbf中选择那个同学。 程序代码:请输入关闭全部输入的姓名: tox used 3360 VFP _ e
9、xample XJ.dbflistxm,jg, rxcj for xm=x Use Set talk on 7.2.1输入命令-accept,(2)accept命令格式: accept字符式TO内存变量作用:此命令等待用户从键盘输入字符串,然后按回车键注:如果选择基于字符的表达式,则该表达式的值首先显示为提示消息。 必须输入数据。 输入的数据只是字符串,用户在输入字符串时不加分隔符,用车键结束输入。 如果在不输入任何内容的情况下按enter键,则指定的内存变量将被分配为空字符串。 【例7.5】从键盘输入名字,显示该同学的相关情况。 程序代码:请输入关闭全部接受人姓名: tox used 336
10、0 VFP _ example XJ.dbfbrowseforxm=xusesettalkon, 7.2. (3)WAIT指令格式: wait字符式TO内存变量windowsAT,NOwaitclear|NOcleartimeout作用:没有任何选择的情况下,暂停程序的执行,按任意的键,继续程序的执行选择TO内存变量时,该命令等待用户从键盘输入值,按enter键后,指定的内存变量被分配字符,程序继续执行。显示【例7.6】信息窗口,5秒后关闭窗口,继续执行程序。 程序代码:清除关闭全部等待输入无效。 windows timeout 5 Set talk on,7.2.1输入命令-请重新输入wai
11、t,7.2.2 .注意:需要分隔符。 除了一般文本外,还可以包含具有特殊意义的文本,如特定变量、表达式和函数。 但是,这些变量、表达式和函数必须包含在文本读取符号“”之间,并在set textmerge on中设置。【例7.7】本文中“今天的日期: 12/31/04”程序代码settalkoffclearcloseallsettextmergeon今天的日期: set talk on,7.2 .输出注:”同样,在输出数据中输出变量、公式、 7.2.1输出命令【例7.8】在此文中“今天的值班人员是李平今天的日期是: 12/31/04”程序代码: settalkoffclearcloseallse
12、ttextmergt输出与“? 命令,7.3选择结构编程,多数问题顺序结构编程不能解决,使用选择结构和循环结构。 支持结构选择的语句包括IFELSEENDIF和DOCASEENDCASE。 7.3.1IFELSEENDIF,格式1:IF Endif作用:条件成立时执行,否则执行ENDIF的下列语句。 格式2:IF ELSE Endif角色:如果条件成立,则执行,否则执行,继续执行ENDIF的下一个语句。 注意: IF和ENDIF必须成对出现,IF是本结构的入口,ENDIF是本结构的出口。 条件语句可以嵌套,但不能相交。 嵌套时,为了使程序清晰、易于阅读,可以缩进形式省略。 在逻辑公式中,首先进
13、行修正运算,根据其结果判断程序的执行流程。 【例7.9】被编程为知道函数y=,求出相应的y值。 程序代码:请输入关闭所有输入的值to x if x8 y=x 5 else y=x*x 5 endif。 y=、y设置任务on、7.3.1IFELSEENDIF、7.3.2文档结束dcase、格式: docasecaseotherwiseendcase。7.4.1 FORENDFOR、格式: FORTO STEP ENDFOR作用:对变量进行循环控制,在指定步骤中从初始值变化到结束值,控制指令序列的执行次数。循环变量分配初始值,判断循环变量值和最终值的大小是否成立,并结束指令序列、循环变量步进变化、
14、for语句、false、true、7.4.1 FORENDFOR 格式: DO WHILE Enddo,执行过程:语句被执行时,如果条件是假循环则结束,执行接在Enddo子句之后的语句。 条件为真时,运行整个循环,遇到Enddo时自动返回DO WHILE重新判断循环条件是否成立,决定是否继续循环。 求例1 2 3 4 5 6 100的和settalkoffsum=0dowhilei=100su m=Sumi=I1enddo。 sum set talk on,【例7.13】d:VFP_example中有cj.dbf (成绩表),其中对数学成绩60分以下的人数、6070人的人数、7080人的人数、
15、8090人的人数进行了修订。程序代码: settalkoffclearcloseallstore0tox 1,x2,x3,x4,x5used 3360 VFP _ example CJ.dbfdowhilenoteof () docasecasesx 90 x1=x1cases 90分以上的人数是:x1? 80-90分以上的人数是,x2? 70-80分以上的人数是,x3? 60-70分以上的人数是,x4? 60分以下的人数,从x5 Use Set talk on,7.4.2 DOWHILEENDDO,【例7.14】键盘输入出生年月日,寻找当年出生的同学,显示“姓名”、“入学成绩”。 (要求该程序能够实现循环检索。 程序代
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025华工科技产业股份有限公司招聘100人+笔试历年难易错考点试卷带答案解析
- 2025北京证券交易所全国中小企业股份转让系统有限责任公司人才引进笔试历年典型考点题库附带答案详解
- 金属非金属矿山开采工程农用地转用方案
- 2025内蒙古锡林郭勒盟锡林珠宝城老凤祥招聘26人笔试历年典型考点题库附带答案详解
- 2025内蒙古能源集团所属部分单位公开招聘137人笔试历年难易错考点试卷带答案解析
- 2025内蒙古巴彦淖尔市交通投资(集团)有限公司(第二批)招聘40人笔试历年常考点试题专练附带答案详解
- 2025兴业银行深圳分行校园招聘笔试历年典型考题及考点剖析附带答案详解2套
- 2025人保安康分公司银行保险部招聘笔试历年典型考题及考点剖析附带答案详解
- 新材料产业园新建及配套货运通道工程交通影响评价
- 企业资金链调度方案
- 2026年高考历史北京卷考试试卷及答案
- 中北大学《高等数学》2025-2026学年第一学期期末试卷(A卷)
- 电力系统运行与调度操作规范指南
- 2026年中国兵器工业集团招聘考试综合知识题库
- 2025年山东日照市初二地理生物会考真题试卷(含答案)
- 幼儿园幼儿申诉工作制度
- 北京工业职业技术学院《旅游接待业》2025-2026学年期末试卷
- 2026年四川省历年信息技术学业水平题库试题【必考】附答案详解
- 人教版三年级数学下册《周长》教学设计(表格式)
- 2025年医疗器械质量检验规范
- 房屋买卖合同2026年电子版下载
评论
0/150
提交评论