VFP程序设计第2章
第二章:VFP编程工具与步骤

• 5. 修改表单
– 方法1:MODIFY FORM <表单名> – 方法2:菜单“文件”→“打开”→文件类型中选 “表单 (*.SCX)→选表单文件名 – 方法3:”项目管理器“→选表单文件→“修改”
•选择某个工具栏
•“确定”
•工具栏的停放
VFP 的工具栏:
§4 向导简介
• 一、启动向导
– 方法一:“项目管理器”中选创建文件的类 型,然后选“新建”,选择“向导” – 方法二:菜单”文件“中选”新建“,然后 选文件的类型,选择”向导“ – 方法三:菜单”工具“,选”向导“
• 二、定位向导屏幕
– ”下一步“ – : – ”完成“
• 三、保存向导结果 • 四、修改用向导创建的项
(不能用”向导“修改,只能用设计器修改)
§5 生成器简介
1. 组合框生成器 (用“生成器锁定”按钮生成)
生成器是带有选项卡的对话框。用于简化对表单、 复杂控件和参照完整性代码的创建和修改过程。
2 . 命令按钮组生成器(用“生成器锁定”
按钮生成)
4 . 表单生成器 (菜单“表单”→“快速
在本地表中运行查询
3. 视图设计器
在远程数据源中运行查询;创建可更新的查询
4. 表单设计器
创建表单以便在表中查看和编辑数据。
5. 报表设计器
建立用于显示和打印数据的报表
6. 数据库设计器
建立数据库;在不同的表之间查看并创建关系。
7. 连接设计器
为远程视图创建连接。
§3 工具栏简介
显示工具栏的方法: • 菜单“显示” •“工具栏”
计算机二级vfp 第二章 Visual Foxpro程序基础

•Hale Waihona Puke 内存变量的显示:– List memory [like <通配符>] [to printer|to file<文件名>] – Display memory [like <通配符>] [to printer|to file<文件名 >] » 说明: » 1、 List memory 一次性显示与通配符匹配的内存变量, 一屏显示不下自动上滚; Display memory 分屏显示。 » 2、通配符有*和?,*表示多个字符,?表示一个字符
? {^2004/7/15 4:20:10a}-100 04:18:30AM && 显示07/15/04
– 关系表达式
• 运算符
– <、>、<=、>=、=、<>、#、!=、==、$
• 运算符优先级:相同优先级
关系运算符的比较规则:
1、数值型数据按数值大小进行比较;日期型数据按年月日的先后进行比较;字 符型数据按相应位置上两个字符的ASCII码值的大小进行比较;汉字按内码进 行比较。 2、在Set exact off状态下,只要“=”右面字符串与左边的字符串的左端部分一 样,系统就认为相同。注意:左边和右边的左端部分一样时不相同。 y="abce"="ab" ?y y="ab"="abc“ ?y 3、运算符$只能比较两个字符串,若左面的字符串是右面的子串 则结果为.T.,否则为.F.。
4、数值型、货币型数据比较 按数值大小比较,包括正负号 5、日期、日期时间型数据比较 越早的日期或时间越小,越晚的日期或时间越大 6、逻辑型数据比较 .T.大于.F. 7、设置字符的排序次序 字符串比较的时候系统对两个字符串的字符自左向右逐个进行比较,一旦发 现两个对应位置上的字符不相同,就根据这两个字符的大小决定字符串 的大小。VFP中默认按PinYin。可以重新设置。 Set collate to “<排序次序名>” 排序次序名必须放在“”中,次序名称可以是“machine”、 “PinYin”、”Stroke” Machine(机内次序):西文字符按ASCII码排列:空格在最前面,大 写ABCD字母在小写abcd字母的前面。对汉字而言,机内码与 国标码一样,次序由拼音顺序不决定。 PinYin : 对 西 文 字 母 而 言 , 空 格 在 最 前 面 , 小 写 abcd 在 大 写 ABCD的前面。 Stroke:按照书写笔画的多少排序
《VFP》 第二章习题

第二章一、填空1、目前用户通常是在操作系统环境下(如在"我的电脑"或"资源管理器"窗口中)创建和删除文件夹.在VFP中,也可以使用MD命令和【 RD 】命令来创建新文件夹和删除已建文件夹.2、在Visual FoxPro中用于计算检索的函数有COUNT、【 SUM 】、【AVG 】、MAX和MIN.3、MESSAGEBOX()函数的功能是显示一个用户自定义对话框.若未指定该对话框的标题,则对话框的默认标题为【 Microsoft Visual FoxPro 】.4、函数STRTRAN(STR(35.96),SPACE(2),"* ")的返回值为 【 ****36】.(提示:系统函数STRTRAN(<字符串1>,<字符串2>,<字符串3>)的功能是用<字符串3>替换<字符串1>中所包含的<字符串2>)5、VFP操作环境可以通过SET命名进行临时设置.决定是否可以通过按[Esc]键中断程序和命令的运行的SET命令的格式是【 set esca 】on|off. 6、Visual FoxPro系统的命令窗口中,输入并执行下列命令后,VisualFoxPro主窗口中显示内容为【 .t. 】 .?3^2+2=MOD(12,7)+LEN("FoxPro")7、日期型数据是一种特殊的数值,Visual FoxPro系统中,日期时间运算符只有【 加法/+ 】和【 减法/- 】两种.8、内存变量是在内存中设置的临时存储单元,当退出Visual FoxPro时其数据自动丢失,若要保存内存变量以便以后使用,可使用SAVE To命令将其保存到文件中。
在Visual FoxPr中,默认的内存变量文件的文件扩展名为【 mem 】.9、将内存变量文件 mVar 中所保存的内存变量恢复到内存,且当前已存在的内存变量仍保留,可以使用命令【 restore 】 FROM mVarADDITIVE .10、利用SET命令可以改变VFP系统运行时的临时工作环境("临时"是指当前有效,下次启动VFP系统时将不起作用).例如,利用SET【 SAFE 】ON|OFF命令可以设置覆盖已有文件之前是否显示提示框.11、表达式SUBSTR("计算机等级考试",AT("DBMS","ABCDEFDBMS"),LEN("数据库管理系统"))的返回值为【 等级考试 】 .12、?CTOD(″01/01/99″)-365,显示结果为【 01/01/98 】13、VFP支持空值(用NULL或.NULL.表示),从而简化了对未知数据的处理.在表的浏览窗口中,若要以交互方式给某字段输入空值,可以按组合键CTRL和【 0 】键 .14、将第2~4个字符为"yan"的所有内存变量保存mVar内存变量文件中,可以使用命令:SAVE TO mVar ALL 【 LIKE 】 ?yan*15、在 VFP 中,使用【 Local 】, PRIVATE 和 PUBLIC 命令可以指定内存变量的作用域.16、若要在VFP程序中调用Windows操作系统中的"计算器"应用程序(相应的程序文件为Calc.exe),则可以使用语句(命令): 【 RUN 】/Ncalc.exe.17、在VFP中,除了自由表的字段名、表的索引标识名至多只能有 【 10】 个字符外,其余名称的长度可以是1—128个字符.18、在"选项"对话框中进行设置后,如果按住【 shift 】键的同时按"确定"按钮,则当前设置会以命令形式显示在"命令"窗口中.19、函数TYPE('answer=42')返回值为L或【 U 】 ,这取决于变量answer是否已预先赋值及值的类型;若要显示如图1所示的"打开"对话框,可用使用函数GETFILE('DBF','【表文件名】').20、用户要在D盘的根目录中创建一个名为MyBack的文件夹,可用命令【MD 】 D:\MyBack.21、在 VFP 中,关闭所有的文件并结束当前VFP系统运行的命令是【CLOSE ALL/quit 】.22、执行函数MESSAGEBOX("清华大学"+【 Chr(13) 】 +"计算机科学系",48,"提示"),则可出现如图所示的消息框.23、利用一条【 STOR/store 】命令(语句)可以给多个内存变量赋同一个值.24、一般高级语言中,内存变量是通过说明语句定义的;而在FoxPro中内存变量是通过【 赋值 】方式定义的,其类型是由所赋值的数据类型决定的. 25、?ROUND(123.456,2),显示结果为【 123.46 】.?ROUND(123.456,-2),显示结果为【 100 】26、依次执行下列两条命令,则屏幕上显示的结果是【 L 】.DIMENSION y(2)27、函数LEN(STR(123456789012))的返回值为 【 10 】,函数LEN(DTOC(DATE(),1))的返回值为【 8 】.28、在VFP中,用户可以利用命令来修改系统的操作环境(如默认工作目录等),也可以通过菜单命令打开【 选项 】对话框进行设置.29、在 VTP 集成环境下调试程序时,如果程序运行过程中出现"死循环"现象,通常可以通过按键盘上的【 ESC 】键强制中断程序.30、创建并保存一个项目后,系统就会在磁盘上生成两个文件,这两个文件的文件扩展名分别为【 pix 】和【 pjt 】31、函数ROUND(1234.196,-2)的返回值为 【 1200】,SUBSTR("mystring" ,6)的返回值为 【 ing 】 .32、使用LOCAL,PRIVATE和PUBLIC命令可以指定内存变量的作用域.在VFP命令窗口中创建的任何内存变量均为 【 全局 】 变量.33、在 VFP 中,系统规定:名称(如变量名,字段名,对象的属性名等)只能以字母,汉字或下线等字符开头,不能以数字字符开头.系统预定义了许多系统变量,他们的名称均以【 下划线/_ 】开头.34、内存变量是系统在内存中设置的临时存储单元,当退出VisualFoxPro时其数据自动丢失.若要保存内存变量以便以后使用,可使用SAVE TO命令将其保存到文件中.在Visual FoxPro中,默认的内存变量文件的文件扩展名为【 MEM 】.35、如果要将第1个字符为" c "的所以变量保存到mVar内存变量文件中,可以使用命令save to mVar 【 all like c* 】36、在VFP的集成操作环境中,对于比较长的命令,在"命令"窗口和程序中可以利用【 分号/; 】以实现换行输入.37、字符型常量也称为字符串,它是由字符串"定界符"括起来的一串字符.字符串定界符可以是单引号、双引号或 【 中括号 】 .二、单项选择1、利用命令 DIMENSION x(2,3) 定义了一个名为X的数组后,依次执行三条赋值命令X(3)=10 ,X(5)=20,X=30 ,则数组元素x(1,1),X(1,3),X(2,2) 的值分别是( A ).A、30,30,30B、.F.,10,20C、30,10,20D、0,10,202、在下列函数中,函数的返回值为数值型的是( A ).A、MESSAGEBOX()B、EMPTY()C、DTOC()D、TYPE()3、对于下列函数来说,其返回值的数据类型不为数值型的是( D ).A、LEN("Visual FoxPro")B、YEAR(DATE())C、ATC("this","ThisForm")D、LEFT("123456",2)4、在 Visual FoxPro 系统中,下列表示中不属于常量的是 ( D ).A、.T.B、[T]C、"T"D、T5、在Visual FoxPro中,EMPTY(.NULL.)和ISNULL(.NULL.)函数的值分别为( D )A、.T.和.T.B、.F.和.F.C、.T.和.F.D、.F.和.T.6、在下面关于数据库的技术的说法中,不正确的是( C )A、数据的完整性是指数据的正确性和一致性B、防止非法用户对数据的存取,称为数据库的安全性保护C、采用数据库的技术处理数据,数据冗余应完全消失D、不同用户可以使用同一数据库,称为数据库共享7、项目(project)是VFP中各种文件组织的核心.在下列有关VFP项目的叙述中,错误的是( B ).A、项目的关键既可以利用菜单或工具栏,也可以利用VFP命令B、一个VFP窗口中,只能打开一个项目C、在VFP窗口中,项目管理器可以折叠成工具栏形式D、"连编"操作是针对项目而言的,该操作位于"项目"菜单栏8、函数LEN(DTOC(DATE( ),1))的返回值为( C )A、4B、6C、8D、109、备注型、日期型和逻辑型字段的宽度是固定的,它们分别是( D )A、4、8、2B、8、8、2C、4、4、1D、4、8、110、执行下列命令后,屏幕上显示的结果是 ( D ) .X="ARE YOU Ok?"Y="are"?AT(Y,X)A、1B、.F.C、.T.D、011、在下列叙述中,错误的是( C )A、关系型数据库中的每一个关系都是一个二维表B、在关系模型中,运算的对象和运算的结果都是二维表C、二维表中不允许出现任何数据冗余D、Visual FoxPro是一种关系型数据库管理系统产品12、下列有关空值的叙述中不正确的是( D )A、空值等价于没有任何值B、空值排序时优先于其他数据C、在计算过程中或大多数函数中都可以用到NULL值D、逻辑表达式.F. OR .NULL.的返回值为.F.13、在关系模型中,关系运算分为传统集合的关系运算和专门的关系运算.在下列关系运算中,不属于专门的关系运算(即属于传统集合的关系运算)的是( D )A、投影B、联接C、选择D、合并14、在下列几组文件类型中,均可设置为项目主程序的是( A ).A、表单、菜单和.PRG程序B、查询、菜单和表C、项目、数据库和.PRG程序D、表单、查询、报表15、以下几组表达式中,返回值均为.T.(真)的是( D ).A、EMPTY({})、ISNULL(SPACE(0))、EMPTY(0)B、EMPTY(0)、ISBLANK(.NULL.)、ISNULL(.NULL.)C、EMPTY(SPACE(0))、ISBLANK(0)、EMPTY(0)D、EMPTY({})、EMPTY(SPACE(5))、EMPTY(0)16、设变量x的值为"abc"(其长度为4,末尾为一个空格字符),变量y的值为"abc"(其长度为4,第一个字符为空格),则表达式LEN(x+y)和LEN(x-y)的返回值分别为( C )A、6,6B、7,7C、8,8D、8,717、函数是程序设计语言中重要的语言成分.在下列 VFP 系统函数中,其返回值不为字符型数据的是( B ).A、TYPEB、DOW ()C、CHR ()D、TTOC ()18、已知数值型变量X=1, Y=2, 以下返回值为"!3!"的表达式是( A ).A、"!"+STR(X+Y,1)+"!"B、"!"+"X+Y"+"!"C、"!"+VAL("X+Y")+"!"D、"!"+X+Y+"!"19、运行下列程序段后,y=DTOC(DATE( ),1) y=.NULL. ?TYPE("y")屏幕上显示的内容是( A )A、CB、DC、LD、NULL20、设变量x的值为"FOXPRO",则下列表达式中运算结果为.T.的是( B ).A、AT("PR",x)B、BETWEEN(x,"A","J")C、SUBSTR(LOWER(x),4)$xD、ISNULL(SUBSTR(x,7))21、在VFP集成环境下用户利用DO命令执行一个程序文件时,系统实质上是执行( A ).A、.PRGB、.BAKC、.FXPD、.EXE22、设XDH为XS表中的一个字段(类型为字符型,宽度为2个字节),则下列条件表达式中,与条件表达式XDH NOT IN("01","04")功能等价的是( A ).A、Xs.xdh!="01" AND Xs.xdh!="04"B、!(Xs.xdh>"01" AND Xs.xdh<"04")C、Xs.xdh<>"01" OR Xs.xdh<>"04"D、Xs.xdh="01" OR Xs.xdh="04"23、在下列函数中,其返回值为字符型的是( C )A、DOW( )B、AT( )C、CHR( )D、VAL( )24、在下列有关VFP表达式中,语法上错误的是( C )A、DATETIME()+1000B、DATE()-1000C、DATETIME()-DATE()D、DTOC(DATE())-DTOC(DATETIME())25、在下列有关名称命令规则的叙述中,不正确的是( C )A、名称中只能包含字母、下划线"-"、数字符号和汉字B、名称的开头只能是字母、汉字或下划线,不能是数字C、各种名称的长度均可以是1--128个字符D、系统预定的系统变量,其名称均以下划线开头26、函数 INT(-3.14) 的返回值是( B ).A、-4B、-3C、3D、427、对于下列函数来说,其返回值的数据类型不为数值型的是( D )A、LEN("Visual FoxPro")B、YEAR(DATE( ))C、AT("this","ThisForm")D、LEFT("123456",2)28、在下列有关日期,时间型表达式中,语法上不正确的是( C ).A、DATE()-400B、DATETIME0+400C、DATETIME()-DATE()D、DTOC(DATE())-TTOC(DATETIME())29、在Visual FoxPro系统中,下列返回值是字符型的函数是( B ).A、VAL()B、CHR()C、DATETIME()D、MESSAGEBOX()。
VF程序设计基础

第二章 Visual FoxPro程序设计基础
功能: ①格式1表示清除所有内存变量。 ②格式2表示清除指定的内存变量。 ③格式3表示清除所有的内存变量。在人机会话状态时 其作用与格式1相同。如果出现在程序中,则应该加 上短语ENTENDED,否则不能删除全局内存变量。 ④格式4表示选用LIKE短语清除与通配符相匹配的内存 变量,选用EXCEPT短语清除与通配符不相匹配的内存 变量。
第二章 Visual FoxPro程序设计基础
1.简单的内存变量 变量都有名,通过变量名来使用变量中存放的数 据(访问变量值)。 向简单内存变量赋值不用先定义,赋值时变量不 存在将自动产生。有两种赋值格式: ① <内存变量名>=<表达式> ② STORE <表达式> TO <内存变量名表> ●等号一次给一个变量赋值。STORE 命令可以同时给多 个变量赋相同值,变量名间用逗号隔开。
第二章 Visual FoxPro程序设计基础
③SET CENTURY ON | OFF | TO [ 世纪值] ROLLOVER [年份参照值] 命令功能:用于决定如何显示或解释一个日期数据 的年份。ON显示世纪,即用4位数字表示年份。 OFF不显示世纪,即用2位数字表示年份。该项是 系统默认设置。 ④SET STRICTDATE TO [0|1|2] 命令功能:用于设置是否对日期格式进行检查。 0:不进行严格的日期格式检查。 1:进行严格的日期格式检查。为系统默认设置。 2:进行严格的日期格式检查,并且对CTOD和CTOT 函数的格式也有效。
VFP第2章 VFP数据基础

教案授课时间3月 3 日至 3 月 14日课时数4+2 授课方式理论课□讨论课□习题课□实验课□上机课□技能课□其他□授课单元第2章VFP数据基础目的与要求1.掌握常用数据类型2.掌握变量命名、声明方法及变量种类3.掌握VFP运算符及表达式4.掌握各种常用函数重点与难点本章重点:整型、数值型、字符型数据;运算符和表达式的运用;常用函数本章难点:表达式和常用函数。
主要内容2.1 数据类型2.2 常量与变量2.3 运算符和表达式2.4 VFP常用函数教学方法手段(教具)采用多媒体投影授课,课中请部分学生到黑板上练习,加强与学生的互动,增加课堂讨论环节,启发式教学,培养学生的实际操作能力。
参考资料《Visual FoxPro程序设计基础》卢湘鸿等编清华大学出版社《数据库系统概论》史嘉权等编清华大学出版社思考题、作业实验2.1实验2.2P46选择题1、2、4、5、6、8填空题1、4、612讲稿第二章VFP数据基础[旧课复习]:复习内容:1.VFP 6.0的操作界面和主要文件类型2.在VFP 6.0的集成环境中,创建一个名为“学生管理”的项目,在该项目中建一数据库,将两自由表添加入库,并进行相关的基本操作复习目的:熟悉VFP 6.0集成环境,熟悉项目管理器复习时长:大约5分钟[新课导入]:导入方式:任何语言都有其规定的语言规范,程序设计语言也不例外。
VFP 6.0程序设计语言规定了它自己的语言规范,只有掌握了它,用户才能熟练地运用VFP 6.0系统。
导入目的:让学生了解学习VFP语言的目的导入时长:大约5分钟[新课讲授]:重点:整型、数值型、字符型数据;运算符和表达式的运用;常用函数。
难点:表达式和常用函数。
方法:运用多媒体辅助教学,采用案例教学和任务驱动等教学法。
2.1 数据类型数据库是用来组织和存储数据的,数据的类型有多种,如数值、字符、图片、多媒体等等。
Visual FoxPro 6.0 给用户提供了多种数据类型,不同的数据类型具有各自的取值范围和特点,计算机根据不同的数据类型,进行不同的操作。
第二章 Visual Foxpro 系统初步

第二章Visual Foxpro 系统初步本章介绍Visual Foxpro 6.0的初步知识,其内容包括:Visual Foxpro 的启动与退出;Visual Foxpro界面组成及操作;Visual Foxpro的特点与工作方式;Visual Foxpro文件类型及特点;Visual Foxpro命令格式;Visual Foxpro辅助设计工具及其项目管理器的基本概念。
最后将详细介绍Visual Foxpro的数据元素,其中包括:常量;变量;表达式和函数等内容。
(注:本教材主要对Visual Foxpro6.0版本进行介绍,下面及以后章节将Visual Foxpro 6.0简称为Visual Foxpro。
)2.1 Visual Foxpro 系统特点与工作方式2.1.1 Visual Foxpro的启动与退出1、Visual Foxpro的启动在windows中启动Visual Foxpro的方法与启动其他应用程序相同。
常用以下三种启动方式:(1)单击“开始”按钮—>指向“程序”—>单击“Microsoft Visual Foxpro”命令。
(2)双击桌面上的Visual Foxpro图标启动Visual Foxpro。
(3)双击与Visual Foxpro关联的文件。
即:鼠标双击表文件、项目文件、表单文件等都能启动Visual Foxpro,同时该文件也将被打开。
2、Visual Foxpro的退出在结束使用Visual Foxpro后,为保证数据的安全和软件本身的可靠性,需要通过正常的方式退出Visual Foxpro,通常退出Visual Foxpro的方法有以下几种:(1)打开“文件”菜单—>单击“退出”命令。
(2)按组合键Alt+F4。
(3)在Visual Foxpro系统环境窗口,单击标题栏右上角的“退出”按钮。
(4)在命令窗口中输入QUIT命令。
(5)同时按下Alt+F4组合键。
VFP第二章数据及数据类型

3).逻辑型常量
逻辑型常量就是表示逻辑判断结果“真”或“假” 的逻辑值。逻辑常量只有真和假两种值,分别用(.t.或.y.) 和(.f.或.n.)表示真和假。一般应在表示逻辑常量的字母 左右加注圆点符“.”以示区别。
4).日期型常量 日期型常量是表示日期值的数据,其默认格式是 {mm/dd/[yy]yy}。如{10/01/02}和{10/01/2002}均表示 2002年10月1日这一日期常量值。 系统默认的“严格日期格式”以{^yyyy-mm-dd}的形式 来表示。 ∧指该日期是严格的,表达一个确切的日期,它不受日期 设置命令SET DATE TO 和SET CENTURY ON/OFF的影响。 其中“-”可用“/”来代替。 必须注意,执行命令时, VFP默认使用严格的日期或日期 时间格式,如果要使用通常的日期或日期时间格式,必 须先执行SET STRICTDATE TO 0命令,否则会引起出 错。如果要设置严格的日期或日期时间格式,可执行命 令SET STRICTDATE TO 1。
| |
最低
对于各种逻辑运算,其运算规则可由逻辑运算真值表确 定,表所示就是逻辑运算真值表。 表 逻辑运算真值表
A .T. .T. .F. .F.
B .T. .F. .T. .F.
A .AND.B
A .OR. B
.NOT A
.T. .F. .F. .F.
.T. .T. .T. .F.
.F. .F. .T. .T.
(3)汉字 系统默认按汉字的拼音排列汉字的顺序,也就是以汉 字的拼音顺序比较“大小”,因此,汉字比较实质上是以 字母的顺序进行比较;但 Visual FoxPro 系统可以设置汉 字按笔画排列顺序,因而,汉字的“大小”就决定其笔画 数的多少。 用菜单设置汉字排列顺序方式的操作步骤为:单击 【工具】 | 【选项】命令,将打开“选项”对话框中,在 “数据”选项卡的“排序序列”下拉列表框中选择 “Stroke”项并确定,系统将按汉字的笔画数进行汉字的 排序、比较运算。 "MACHINE"按ASCII码比较大小 ?"实际"<"实习"
第2章 VFP 基础知识

3. 数据类型
数据是反映客观事物属性的记录。通常分为数值型 和字符型两种基本类型。数据类型一旦被定义,就确定 了其存储方式和使用方式。 Visual FoxPro系统为了使用 户建立和使用数据库更加方便,将据描述不具有计算能力的文字数据类型, 是最常用的数据类型之一。 字符型数据(Character)是由汉字和ASCII字符集中 可打印字符(英文字符、数字字符、空格及其他专用字符) 组成,长度范围是0~254个字符。
第2章 Visual FoxPro基础知识 章 基础知识
本章要点
1. Visual FoxPro命令的格式与书写规则 命令的格式与书写规则 2. 文件类型 3. 数据类型 4. 数据存储 5. 表达式 6. 函数
1. Visual FoxPro命令的格式与书写规则 命令的格式与书写规则
Visual FoxPro功能异常强大, 拥有近500条命令。且其 命令比一般程序设计语言中的语句更加精练、功能更强。 掌握一些常用命令,可以使操作更方便、快捷、高效。本 节介绍Visual FoxPro命令的一般格式及其书写规则。 (1)Visual FoxPro的命令格式 的命令格式 一条命令通常由命令动词和若于个短语组成。命令动 词表明该命令执行什么操作,短语用于说明命令的操作对 象、操作条件等,短语有时又称为子句。Visual FoxPro命 令的典型格式为: <命令动词>[<表达式表>][<范围>] [FOR <条件>][WHILE <条件>] [TO FILE <文件名> | TO PRINTER | TO <内存变量>]
常量可以在Visual FoxPro的命令窗口中通过以下命令 创建或释放: #DEFINE 常量名 常量值 &&常量的创建 #UNDEF 常量名 &&常量的释放 常量名是指以字母或下划线开始,后面可以跟任意个 字母或数字的字符串。如X1、CONST_1等(注意:在 Visual FoxPro的常量名中字母的大小写具有同样含义)。 常量值是指常量名所代表的数值。 例如:#DEFINE PI 3.14159 一但通过"#DEFINE 常量名 常量值"命令定义了一个常 量名后,则在以后的应用中可以用此常量名代表常量出现, 但不能对符号常量重新赋值,直到遇见"#UNDEF 常量名" 命令释放定义或程序结束为止。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.4 函数
函数是子程序的一种, 函数是子程序的一种,它能完成一种特 定的运算. 定的运算. 它与数学中的函数没有什么区别: 它与数学中的函数没有什么区别: 由自变量从函数得到一个因变量, 由自变量从函数得到一个因变量,这个 自变量也叫参数,因变量叫返回值. 自变量也叫参数,因变量叫返回值. 函数的格式: 函数的格式: 函数名(参数) 函数名(参数)
2.4.1 函数的分类 VFP的函数有两种,一种是用户自定义 的函数有两种, 的函数有两种 函数,一种是系统函数( 多个). 函数,一种是系统函数(380多个). 多个 学习函数要注意从三个方面学习: 学习函数要注意从三个方面学习: 1,函数的格式 , 2,函数的功能 , 3,函数的用法 ,
2.4.2 常用函数
第2章 Visual FoxPro编程基础 章 编程基础
2.1 数据的类型 2.2 常量与变量 2.3 表达式与运算符 2.4 函数
* 可与数学运算做类比
2.1 数据的类型
2.1.1 数据的分类 VFP的数据类型分为两大类:基本数据类型 的数据类型分为两大类: 的数据类型分为两大类 和只可用于字段的数据类型. 和只可用于字段的数据类型. 2.1.2 基本的数据类型 VFP的基本数据类型既可用于字段变量,又 的基本数据类型既可用于字段变量, 的基本数据类型既可用于字段变量 可用于常量,内存变量,表达式,包括:数值型, 可用于常量,内存变量,表达式,包括:数值型, 字符型,货币型,日期型,日期时间型, 字符型,货币型,日期型,日期时间型,逻辑型 见表2-1. 等,见表 .
程序设计中函数与数学中函数比较
一个因变量(参数) 一个因变量(参数)的情况 f( x ) = x +5 当x = 8 时, f = 13 INT(<N>):对N取整. 例:INT(3.6)的计算结果为3 两个因变量(参数) 两个因变量(参数)的情况 f( x , y ) = x + 5 y 当x = 2 y= 3 时,f = 17 ROUND(<N1>,<N2>):四舍五入. 例:ROUND(12.647,2)的计算结果为12.65
例子与结果 ABS(3),ABS(-7.8) SQRT(2) EXP(1),EXP(-2) INT(3.6),INT(-2.14) LOG(10),LOG(2.7183) LOG10(10),LOG10(2.7183) 3,7.8 1.41 2.72, 0.14 3,-2 2.30, 1.0000 1.00, 0.4343 0.00, 1.00 0.0000, 90.0000 1.00
M C M
10 8 10
2.2 常量与变量
2.2.1 常量(始终保持不变) 始终保持不变)
1. 数值型常量 2.134 数值型常量— 2. 字符型常量 "AA",'海洋',[Foxpro] 字符型常量— , 海洋' 3. 逻辑型常量 .T. ,.F. 逻辑型常量— 4. 日期型常量 {^2007-9-3} 日期型常量— 5. 日期时间型常量 {^2007-9-3 8:30:00 am} 日期时间型常量— 6. 货币型常量— $1236.28 货币型常量
CEILING(<N>) 不小于N的最 小整数
CEILING(-3.45),CEILING(0.7),-3,1,3 CEILING(2.8) 2,2 12.65,10
MOD(<N1>,<N N1和N2相除后 MOD(5,3),MOD(-10,3) 2>) 的余数 ROUND(<N1>, <N2>) RAND() N1保留N2位小 ROUND(12.647,2), ROUND(12.647,-1) 数 (0,1)的随机 数 RAND()
2. 变量的赋值 赋值命令的格式有两种. 赋值命令的格式有两种. 命令格式 : 命令格式1:
〈内存变量名〉=〈表达式〉 内存变量名〉 〈表达式〉 如: C=650 D={^2008-9-3}
பைடு நூலகம்
命令格式 : 命令格式2:
STORE 〈表达式〉 TO 〈内存变量表〉 表达式〉 内存变量表〉 如:STORE 0 TO x STORE 0 TO y,z
与AT函数类似,但不区分 大小写 删除C的左端空格 删除C的右端空格 删除C的左,右两端空格 生成N个空格 把C转换成大写 把C转换成小写 C1在C2中出现的次数
LEN("ABC"),LEN(" 3,4 函数")
从N位置开始求C2在C1中第 AT("ABC","B"),AT( 2,4 一次出现的位置,省略N则 "ABAB","B",3) 从C1开始起
ATC(<C1>,<C2>[, <N>]) LTRIM(<C>) RTRIM(<C>) ALLTRIM(<C>) SPACE(<N>) UPPER(<C>) LOWER(<C>) OCCURE (<C1>,<C2>)
VFP提供的算术运算符,见表2-3. 提供的算术运算符,见表 . 提供的算术运算符
运算符 + * / ^ 或 ** %
名称 加 减 乘 除 乘方 求余
说明 同数学中的加法 同数学中的减法 同数学中的乘法 同数学中的除法 同数学中的乘方,如4^3 表示43 12 % 5 表示12除以5所得 的余数
2.3.2 字符串运算符与字符串表达式 VFP提供的字符运算符有两个(其运算级 提供的字符运算符有两个( 提供的字符运算符有两个 别相同),见表2-4. ),见表 别相同),见表 .
45.0000 3,C 男, 10/01/01 3.14 -4,0,2
MAX(<*1>,<*2 系列值较大者 > [,…]) MIN(<*1>,<*2> 系列值较小者 [,…]) SING(<N>) PI() FLOOR(<N>) N的符号 圆周率 不大于N的最 大整数
SIGN(-3),SIGN(0),SIGN(6.53) -1,0,1
B F I G
8 8 4 10
+/-4.94065645841247×10-324~+/8.9884656743115×10307 与数值型相同 -2147483647~2147483647 用于存储OLE对象,包含对OLE对象的引用. OLE对象的具体内容可以是一个电子表格,一 个字处理器的文本,图片等. 系统将备注内容存放在一个相对独立的文件中, 该文件的扩展名为.DBT.由于没有备注型的变 量,所以对备注型字段的处理,需转换成字符 型变量,然后使用字符型函数进行处理. 用于存储任意不经过代码页修改而维护的字符 数据 用于存储任意不经过代码页修改而维护的备注 型数据
2.3 表达式与运算符
用园括号和运算符把常量, 用园括号和运算符把常量,变量和函 数连起来的式子,称为表达式. 数连起来的式子,称为表达式. 2.3.1 算术运算符与算术表达式
算术表达式的格式为: 算术表达式的格式为:
〉〈算术运算符 〉〈数值 〉〈数值 〈数值1〉〈算术运算符 〉〈数值 〉[〈算术运算符 〉〈数值 〉…] 数值 〉〈算术运算符1〉〈数值2〉 〈算术运算符2〉〈数值3〉
N弧度的余弦, COS(90/180*PI()), SIN(90/180*PI()) 正弦值 N的反余弦, 反正弦值 N弧度的正切 值 ACOS(1)/PI()*180, ASIN(1)/PI()*180 TAN(45/180*PI())
ATAN (<N>)
N的反正切值
ATAN(1)/PI()*180 MAX(2,3,-5,0), MAX("A","C","B") MIN("男","女"),MIN({^200201-24,},{2001-10-01}) PI() FLOOR(-3.45),FLOOR(0.7), FLOOR(2.8)
日期型(Date) D 日期时间型 (DateTime) 逻辑型 (Logical)
T L
2.1.3 数据表中字段的数据类型
表2-2中的数据类型只能被用于数据表中的字段.
类型 代码 长度(字节) 或格式 表示范围或说明
双精度型 (Double) 浮(Float) 整型(Integer) 通用型 (General) 备注型 (Memo) 字符型 (二进制) 备注型 (二进制)
3. 变量的类型 变量的类型是指其存放的数据的值. 变量的类型是指其存放的数据的值.在 VFP中,有6种类型的内存变量. 种类型的内存变量. 中 种类型的内存变量 (1) 数值型(N) 数值型( ) (2) 字符型(C) 字符型( ) (3) 逻辑型(L) 逻辑型( ) (4) 日期型(D) 日期型( ) (5) 日期时间型(T) 日期时间型( ) (6) 货币型(Y) 货币型( ) (7) 对象型(O) 对象型( )
类型 数值型 (Numeric) 货币型 (Currency) 字符型 Character (Character)
代 码 N Y C
长度(字节) 或格式 8 8 每个字符1 个字节 yyyymmdd yyyymmdd hhmmss 1
表示范围或说明 -0.9 999 999 999×1019~0.9 999 999 999×1020 -922 337 203 685 477.5807~922 337 203 685 477.5807 由字母(汉字),数字,空格等任意 ASCII ASCII码字符组成,最多255个字符 255 公元0001年1月1日~公元9999年12月31 日 缺省日期值时,系统自动加上1999年12 月31日,省略时间值时,则自动加上午 夜零点. 只有真(.T.)和假(.F.)两种值