已阅读5页,还剩82页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Visual FoxPro 6.0全国VFP培训教程(2010版)目 录第1章 Visual FoxPro基础111 Visual FoxPro的认识112 Visual FoxPro的启动与退出113 Visual FoxPro界面的认识114 Visual FoxPro的工作方式215 Visual FoxPro的常用设置3第2章 Visual FoxPro程序设计基础521 Visual FoxPro的常量与变量522 Visual FoxPro的函数823 Visual FoxPro的表达式1424 程序与程序文件1825 程序的基本结构2126 子程序2427 程序调试简介27第3章 Visual FoxPro数据库、表及其操作2931 Visual FoxPro的数据库2932 Visual FoxPro的表3033 Visual FoxPro的数据库和表3234 Visual FoxPro表的常用操作命令3335 排序与索引3836 记录查找4337 数据统计4438 多表同时操作4539 数据完整性49第4章 SQL语言5141 SQL概述5142 SQL查询功能5143 SQL定义功能5544 SQL操作功能57第5章 查询与视图595.1 查询595.2 视图61第6章 表单设计6361 表单设计基础6362 表单对象6563 常用控件介绍6664 利用表单向导创建表单76第7章 菜单设计7771 菜单的认识7772 菜单设计介绍7773 下拉式菜单设计78第8章 报表设计7981 报表设计基础7982 简单报表设计8083 分组报表设计8084 分栏报表设计8185 统计输出8186 利用报表向导创建报表81第9章 数据库应用系统开发概述8291 数据库应用系统的认识8292 利用项目来管理开发中的数据库应用系统82全国VFP培训教程(2010版)第1章 Visual FoxPro基础11 Visual FoxPro的认识一、Visual FoxPro的念读 二、Visual FoxPro的缩写VFP三、Visual FoxPro是什么?Visual FoxPro是一个计算机软件,称为小型关系数据库管理系统,适合小型数据库管理领域(如图书馆的图书管理等)。四、利用Visual FoxPro能做些什么?1、建立存放数据的数据库2、开发对数据库进行操作的应用程序五、Visual FoxPro软件的版本情况Visual FoxPro软件目前广泛使用的是6.0版。12 Visual FoxPro的启动与退出一、Visual FoxPro的启动二、Visual FoxPro的退出(P23)13 Visual FoxPro界面的认识一、界面组成标题栏菜单栏工具栏状态栏主窗口命令窗口二、状态栏1、显示或隐藏2、建议显示出状态栏。三、工具栏1、显示或隐藏2、建议建议显示出“常用”工具栏。四、主窗口显示操作结果。五、命令窗口1、作用输入操作命令的场所。2、关闭与显示鼠标操作快捷键操作Ctrl+F4:关闭;Ctrl+F2:显示。3、说明一个命令输完后必须按下回车键,VFP才会执行相应的命令。光标回到前面用过的命令,回车,将再次执行该命令。前面用过的命令也可以修改使用。4、几个常用命令clear:清除主窗口上的显示。?:在主窗口当前行的下一行显示其后要显示的各项内容(各项内容间以逗号分隔)。?:在主窗口当前行内容之后显示各项内容。quit:退出VFP。14 Visual FoxPro的工作方式一、交互方式通过使用菜单、工具或在命令窗口提交命令来进行操作,这种操作方式就叫交互式。交互式操作的特点:1、每次操作是立即执行的(如,命令在输入完毕,按回车键时就执行);2、操作过程不予保留,下次进行同样操作时,只能重复操作过程。二、程序方式如果希望多个命令一块执行时,就要采用程序方式。程序方式的工作机制:1、先将要执行的命令集中放到一个文件中(这样的文件叫命令文件或程序文件);2、然后在需要时执行这个命令文件即可。例:一块依次执行下列命令:Clear?1?”+” 解释:此命令将显示一个“+”号?4?”=” 思考:此命令将显示一个什么号??5程序方式的特点:1、命令集中执行;2、命令文件中保存了这些操作命令,再次执行这些命令时,无需再输入这些命令;3、程序方式因为是命令集中执行,所以,适合进行复杂的处理,处理的自动化程度高。探索与思考1、上例中的命令文件的存放在哪里?2、命令文件的扩展名是什么?3、如果把上例中的命令文件挪到另一个目录中,还能执行该命令文件吗?15 Visual FoxPro的常用设置一、日期格式的设置1、当前日期格式的了解?date()?set(date)“选项”对话框2、日期格式的设置“选项”对话框设置相关设置命令SET DATE TO 日期格式作用:设置日期格式。说明:常用日期格式有AMERICAN(MM/DD/YY)、ANSI(YY.MM.DD)、MDY、DMY、YMD。命令中,规定使用的单词叫保留字。保留字大小写随意,且可以只写出前面的四个字母。命令窗口中,保留字通常以蓝色显示。SET CENTURY ON|OFF作用:设置年份显示2位(OFF)还是4位(ON)。说明:格式中,“|”表示“或者”的意思。SET MARK TO 分隔符作用:设置年月日之间的分隔符。说明:如果分隔符设置为“-”,该命令为:SET MARK TO -SET MARK TO “-“SET MARK TO -注意,这里的单引号、双引号、中括号应是英文状态下的符号。二、默认目录的设置1、默认目录的理解默认目录是VFP默认的文件位置。2、当前默认目录的了解? sys(5)+sys(2003)3、默认目录的设置“选项”对话框设置命令设置SET DEFAULT TO 目录例:将D盘根文件夹下的XXX文件夹设置为默认目录。SET DEFAULT TO D:XXX探索与思考1.4中的命令文件挪走后,如何能够再次执行它?三、主窗口字体、字号的设置主窗口可以理解为一个对象,对象名是:_screen。对象具有很多属性,主窗口对象的字体是由fontname属性决定的,字号是由fontsize属性决定的。可见,要改变主窗口的字体、字号,只用改变主窗口对象上述两个属性的值即可。对象属性的表示:对象名.属性名。改变对象属性可以通过赋值命令实现。例:将主窗口的字体设为“黑体”,字号为25。_screen.fontname=”黑体”_screen.fontsize =25练习1、在E盘建立一个自己的文件夹。2、启动VFP,优化整理VFP界面。思考:工具栏通常要显示哪些?状态栏通常要显示出来吗?主窗口通常显示多大?命令窗口通常显示多大?命令窗口摆放在什么位置比较合理?3、了解当前的日期格式,如果不符合你的习惯,重新设置VFP的日期格式。4、了解当前VFP的默认目录,然后将自己的文件夹作为VFP的默认目录。5、将主窗口的字体设为“楷体”、30号,并进行验证。6、设计一个程序,文件名自定,要求每次执行时,先清除主窗口的显示,然后显示如下内容:1+1=2OK,I see!思考:在给建立的程序文件取名时,使用汉字名好吗?为什么?7、练习其他有关操作。8、用命令方式退出VFP。说明1、VFP的设置在下次进入VFP时将无效,要想使设置长期有效,应在“选项”对话框中单击“设置为默认值”按钮。2、每次练习时,建议在硬盘(如E盘等)建一个自己的文件夹,然后将其作为VFP的默认目录。第2章 Visual FoxPro程序设计基础21 Visual FoxPro的常量与变量一、常量1、常量的认识常量是表示一个确定的数据,如65.8等。常量有数值型、货币型、字符型、逻辑型、日期型、日期时间型6种。2、数值型常量1)数值型常量表示的是一个具体的数,因此,数值型常量也称为常数。2)数值型常量的书写方法:日常表示法如12、+56、-64.8等。科学表示法1.6E12表示1.61012;1.6E-12表示1.610-12;-1.6E12表示-1.61012;-1.6E-12表示-1.610-12。3、货币型常量1)货币型常量用来表示一个具体的货币值。货币型常量的小数位数采用4位。2)货币型常量的书写方法:如$12,$12.68,-$12.68等。4、字符型常量1)字符型常量用来表示一串字符(英文字母、数字、符号、汉字统称为字符),因此,字符型常量也称为字符串。2)字符型常量的书写方法:abcd、abcd、abcd均表示字符串abcd。3)说明表示字符型常量前后的、或称为字符型常量的定界符,它表示字符串的开始和结束,不是字符串的组成内容。字符串的前后定界符必须一致,如abcd等是错误的。当字符串中包含、或时,必须使用其它的定界符,如字符串Its my book应表示为Its my book或Its my book。思考:abcd是什么含义?字符型常量中的字母大小写是区分的,比如abcd和ABCD是不同的两个字符串。注意:其他场合,字母的大小写是不区分的。组成字符串的内容中可以有空格,如ab cd、a bc d、 等都是正确的字符串。两个单引号()、两个双引号()、一对中括号()均表示没有组成内容的字符串,这样的字符串称为空串。注意:空串并不是指全部由空格组成的字符串。注意定界符应是英文符号,不能是中文符号。顺便说一下中英文符号问题:字符串中可以随意使用中英文符号,其他使用符号的场合均只能使用英文符号!5、逻辑型常量1)逻辑型常量用来表示一个逻辑值。逻辑值只有真值和假值两个。2)逻辑型常量的书写方法:真值:.T. 、.t. 、.Y. 、.y.假值:.F. 、.f. 、.N. 、.n.6、日期型常量1)日期型常量用来表示一个日期。2)日期型常量的书写方法:如2010年4月17日可表示为:2010-4-17、2010.4.17、2010/4/17、2010 4 17。说明:严格的日期格式为yyyy-mm-dd,这种表示格式不受系统当前日期格式的影响,在书写日期的时候建议采用严格的日期格式,以免与系统日期设置冲突。7、日期时间型常量1)日期时间型常量用来表示一个日期和时间。2)日期时间型常量的书写方法:格式:日期,时间其中,日期的书写格式同日期型常量,时间的书写格式有:8:30:30、18:15:25、8:10:30A、8:10:30AM、8:10:30P、8:10:30PM。练习通过显示命令显示你的姓名、所在专业、年龄、月消费金额、出生日期、是否党员(假设真值表示是党员、假值表示不是党员)、我们下次课的日期及时间。二、变量1、变量的认识变量是用一个名称(称为变量名)来表示的,它的值是可改变的。变量名一般以字母或汉字开始,其后可以是字母、汉字、数字及某些符号(如下划线)。探索与思考a,aa,b12,c_1,a1B2,2d4,同学们,“同学们”,同学们以上哪些可以作为变量名?变量的类型由其值的类型决定。2、变量的值可以通过赋值命令获得1)赋值命令的格式变量=表达式store 表达式 to 变量1,变量2,2)赋值命令举例例:为变量a赋一个值12,为变量x、y、z赋值34.2,并验证。3、变量的另一种使用形式数组1)普通变量是一个变量里只能“放”一个值,而一个数组变量可以“放”多个值。数组变量中,“放”每一个值的叫数组元素。2)数组变量中,数组元素用数组变量名加下标的方法来表示。如数组a有两个元素,则可以表示为a(1)、a(2);数组b有两行两列4个元素,则可以表示为b(1,1)、b(1,2)、b(2,1)、b(2,2)。3)如果一个数组,其元素不分“行”、“列”,则该数组称为一维数组;如果一个数组,其元素按“行”、“列”排列,则该数组称为二维数组。4)数组变量的使用与普通变量的使用有所不同:普通变量在第一次获得值时被自动定义,而数组变量必须先定义,然后使用。5)数组变量的定义定义一维数组变量dimension|declare 数组名(下标上限)定义二维数组变量dimension|declare 数组名(第一个下标上限,第二个下标上限)说明:下标上限指下标的最大值。下标下限指下标的最小取值。VFP中,下标的下限规定为1。一个命令可同时定义多个数组,之间用逗号分隔。例:定义一维数组A,有4个元素;定义二维数组B,有3行4列元素。6)数组变量说明数组变量定义后,如果未对其赋值,则各元素为假值(.F.);给数组变量赋一个值时,其元素均得到该值,也可以为其元素分别赋以不同的值;思考:1、执行命令Store 1 To A后,A(1),A(2),A(3),A(4)的值分别是什么? 2、如果要给B各个元素赋不同的值,应该怎么赋值?数组变量不直接参加运算,其元素可以;二维数组元素也可以只用一个下标来表示。4、和变量有关的常用命令1)list memory命令格式:LIST MEMORY LIKE 通配名 TO PRINTER TO FILE 文件名。功能:显示变量信息。说明:变量信息包括变量名、类型、值等内容。“LIKE 通配名”选项解释:表示只显示和通配名一致的变量信息。通配名是指包含?或*的名称,其中,?表示该位置可以是任意的某个符号,*表示该位置可以是任意多的符号。比如a?c表示这样的一些名称:第一位是a,第二为任意,第三位是c;a*c表示这样的一些名称:第一位是a,最后一位是c,中间内容任意。“TO PRINTER”选项解释:表示将变量信息同时送打印机打印。“TO FILE 文件名”选项解释:表示将变量信息同时存入到指定的文件中。显示全部变量信息时,不仅有我们自己使用的变量,而且包括VFP本身所固有的变量(这些变量称为系统变量,系统变量名均以下划线开始)。当显示的变量信息超出一个屏幕时,前面的信息会滚出屏幕。2)display memory命令格式:DISPLAY MEMORY LIKE 通配名 TO PRINTER TO FILE 文件名。功能:显示变量信息。说明:与list memory命令的唯一区别在于:当显示的变量信息超出一个屏幕时,该命令能做到一个屏幕一个屏幕地显示。3)clear memory命令格式:clear memory功能:清除所有变量。说明:系统变量是我们清除不掉的。4)release命令格式1:release 变量1,变量2,功能:清除指定的变量。格式2:release all功能:清除所有变量。格式3:release all like 通配名功能:清除和通配名一致的变量。格式4:release all except 通配名功能:清除和通配名不一致的变量。练习一、试用二维数组表示如下矩阵并予以显示:1000010000100001二、用一个下标方式表示上题对角线上各元素,并通过显示命令显示出他们的值。三、分别为变量abc,xb,mbn赋值2012-12-15,.f.,25,然后显示:1、这三个变量的值;2、这三个变量的信息。四、VFP中,能否使用三维数组?五、练习其他有关内容。22 Visual FoxPro的函数一、认识可以通过VFP提供的函数对数据进行运算。通过函数对数据进行运算时,参加运算的叫自变量或参数,运算结果就是函数值。函数的一般使用格式:函数名(自变量,自变量,)注意:VFP中,当一个函数不需要自变量时,圆括号也要写上,如DATE()等。二、常用数值函数1、ABS函数功能:求一个数的绝对值。例1:ABS(67)例2:ABS(-67+89)例3:ABS(-82)思考:如何验证函数值?2、SIGN函数功能:当自变量值正时,返回1;当自变量值负时,返回-1;当自变量值为0时,返回0。例:SIGN(56-73)思考:试用SIGN函数写出为变量B赋值的赋值命令,要求:当变量A的值为正时,B赋以值8+20,即28;当变量A的值为负时,B赋以值8-20,即-12;当变量A的值为0时,B赋以值8。3、SQRT函数功能:求正数的平方根。例:SQRT(2)说明:默认计算结果为2位小数。SET DECIMALS TO命令可设置运算结果的小数位数。4、PI函数功能:函数值为圆周率的值。例:PI()5、INT函数功能:返回自变量的整数部分。例1:INT(1.3)例2:INT(1.6)例3:INT(-1.3)例4:INT(-1.6)6、CEILING函数功能:返回大于或等于自变量的最小整数。俗称天花板函数。例1:CEILING(1.3)例2:CEILING(2)例3:CEILING(-1.3)例4:CEILING(-2)7、FLOOR函数功能:返回小于或等于自变量的最大整数。俗称地板函数。例1:FLOOR(1.3)例2:FLOOR(2)例3:FLOOR(-1.3)例4:FLOOR(-2)8、ROUND函数功能:对自变量的值进行四舍五入运算。运算时,第二个自变量表示精确到哪一位。例1:ROUND(345.345,2)例2:ROUND(345.345,1)例3:ROUND(345.345,0)例4:ROUND(345.345,-1)9、MOD函数功能:求两个整数相除以后的余数。例1:MOD(10,3)例2:MOD(9,3)例3:MOD(11,3)说明:有负数的求余不考虑。10、MAX函数功能:从多个自变量中挑出最大的值。例:MAX(1,2,7,4,5) 说明:自变量也可以是非数值型的,但自变量的类型应一致。如:MAX(A,ABC,BC)11、MIN函数功能:从多个自变量中挑出最小的值。例:MIN (1,2,7,4,5) 说明:自变量也可以是非数值型的,但自变量的类型应一致。如:MIN (A,ABC,BC)三、常用字符处理函数1、LEN函数功能:求字符串的长度。说明:一个汉字长度为2,一个英文字符(包括空格)长度为1。例:LEN(Visual FoxPro教程)2、LOWER函数功能:将自变量中的所有字母转化为小写字母。例:LOWER(Visual FoxPro教程)3、UPPER函数功能:将自变量中的所有字母转化为大写字母。例:UPPER(Visual FoxPro教程)4、TRIM或RTRIM函数功能:将字符型自变量右边空格去掉。例:TRIM( Visual FoxPro )5、LTRIM函数功能:将字符型自变量左边空格去掉。例:LTRIM( Visual FoxPro )6、ALLTRIM函数功能:将字符型自变量左、右两边的空格均去掉。例:ALLTRIM( Visual FoxPro )7、LEFT函数功能:从一个字符串左边开始取子串。例1:LEFT(下午好!,2)例2:LEFT(下午好!,4)8、RIGHT函数功能:从一个字符串右边取子串。例1:RIGHT(下午好!,2)例2:RIGHT(下午好!,4)9、SUBSTR函数功能:从一个字符串中取子串。例1:SUBSTR(下午好!,3,2)例2:SUBSTR(下午好!,3,4)10、SPACE函数功能:产生指定个数空格组成的字符串。例:SPACE(10)11、REPLICATE函数功能:由指定字符串重复组合产生字符串。例1:REPLICATE(*,10)例2:REPLICATE(ABCD,5)12、AT函数功能:求第一个字符串在第二个字符串中出现的位置。例1:AT(ab,huABygabhgtabagf)例2:AT(ab, huABygabhgtabagf ,2)13、ATC函数功能:求第一个字符串在第二个字符串中出现的位置,但不区分字母大小写。例1:ATC(ab, huABygabhgtabagf )例2:ATC(ab, huABygabhgtabagf ,2)14、OCCURS函数功能:求第一个字符串在第二个字符串中出现的次数。例1:OCCURS(a,abScaBdA)例2:OCCURS(ab,abScaBdA)例3:OCCURS(abc,abScaBdA)15、STUFF函数功能:字符串内容替换。例:STUFF(abdcefg,3,4,AA)思考:在ab的a、b之间插入和。“淮北煤炭师范学院”已改名为“淮北师范大学”了,淮北师范大学的你,能通过STUFF函数,将“淮北煤炭师范学院”中的“煤炭”二字删除、“学院”二字改为“大学”,使得结果是“淮北师范大学”吗?16、CHRTRAN函数功能:字符串内容替换。例1:CHRTRAN(aBCAAC,AC,”12”)例2:CHRTRAN(aBCAAC,AC,”1”)例3:CHRTRAN(aBCAAC,AC,”123”)说明:该函数对汉字进行替换时,会出现异常。例4:CHRTRAN(大家好!,大家,你)例5:CHRTRAN(淮北煤炭师范学院,学院煤炭,大学)17、LIKE函数功能:如果两个字符串一样,则函数值为真值,否则是假值。例1:LIKE(abc,ABC)例2:LIKE(abc,ab)例3:LIKE(abc,abc)说明:前一个字符串中可以出现通配符?和*。?表示该位置可以是任意的某个符号,*表示该位置可以是任意多的符号。例4:LIKE(ab*,ab)例5:LIKE(ab,ab*)四、常用日期、时间函数1、DATE函数功能:返回当前系统日期。例:DATE()2、TIME函数功能:返回当前系统时间。例:TIME()说明:函数值为字符型。3、DATETIME函数功能:返回当前系统日期及时间。例:DATETIME()思考:函数值什么类型?4、YEAR函数、MONTH函数、DAY函数功能:分别返回日期或日期时间型自变量中的年份、月份和日子。例:分别求出今天的年、月、日。5、HOUR函数、MINUTE函数、SEC函数功能:分别返回日期时间型自变量中的时、分、秒。例:分别求出现在的时、分、秒。五、常用转换函数1、STR函数功能:将数值型自变量转换为字符型。例:STR (123.456)说明:函数值默认10位,不带小数部分。可以加上第2、第3个参数,用来分别表示总位数和小数位数。默认或指定位数比实际位数多时,函数值的左边补以相应个数的空格,以保证总位数;默认或指定位数比实际位数少时,先减少小数位数,还不够时,只好返回默认或指定位数个*。练习:验证以下函数值,看看和自己预想的是否一致。STR (123.456,5)STR (123.456,5,1)STR (123.456,5,2)STR (123.456,6,2)STR (123.456,3,2)STR (123.456,2)2、VAL函数功能:将字符型自变量转换为数值型。例1:VAL(1234.56)例2:VAL(123a)例3:VAL(上午好!)3、DTOC函数功能:将日期型或日期时间型自变量转换为相应的日期字符串。例:DTOC(DATE()说明:转换后的字符串组成和当前日期格式有关,若加上1参数,将转化为YYYYMMDD这种固定格式的字符串,如:DTOC(DATE(),1)4、TTOC函数功能:将日期时间型自变量转换为相应的字符串。例:TTOC(DATETIME()说明:转换后的字符串组成和当前日期时间格式有关,若加上1参数,将转化为YYYYMMDDHHMMSS这种固定格式的字符串,如:TTOC(DATETIME(),1)5、CTOD函数功能:将日期形式的字符串转化为日期型。说明:字符串的日期形式应和当前日期格式一致,否则将转化为空日期。例:CTOD (2010/5/1)6、CTOT函数功能:将日期时间形式的字符串转化为日期时间型。说明:字符串的日期时间形式应和当前日期时间格式一致,否则将转化为空日期时间。例:CTOT (2010/5/1 10:8:30)7、ASC函数功能:求字符型自变量中第一个字符的ASCII码。例:ASC(A)8、CHR函数功能:根据ASCII码求对应的字符。例:CHR(65)六、常用测试函数1、EMPTY函数功能:判断一个数据是否空值,是为真,否则为假。例:EMPTY (0),EMPTY (0),EMPTY (),EMPTY ( ),EMPTY ()2、VARTYPE函数功能:判断自变量的数据类型,返回相应的字母。例:VARTYPE(23),VARTYPE(23)3、BETWEEN函数功能:判断第一个自变量的值是否在后两个自变量之间,是,函数值为真值;不是,函数值为假值。例:BETWEEN(3,1,6),BETWEEN(3,6,1),BETWEEN(3,3,6),BETWEEN(3,4,6),BETWEEN(“e”,”a”,”x”)七、其它常用函数1、条件函数用法:IIF(逻辑型表达式,表达式1,表达式2)功能:如果逻辑型表达式的值为真,则表达式1的值作为函数值,否则,表达式2的值作为函数值。例:函数IIF(X10,AAA,BBB)思考:当变量X分别取值10、0、100时,函数IIF(X10,AAA,IIF(X10,BBB,CCC)的值。2、宏替换函数用法:&字符型变量.功能:用字符型变量的值(不带定界符)替换整个宏替换函数。例:假设A=76+28,问表达式1+A和1+&A.分别等价于什么?说明:该函数是一个十分有用又十分特殊的函数。宏替换函数出现在字符串中时也还有效,而其它函数出现在字符串中时被当作一个个字符处理。如:若A=ABC,则X&A.Y等价于XABCY;而XABS(-86)Y却不等价于X86Y。宏替换函数最后的小数点是宏替换函数的结束标记。当宏替换函数和其后的内容能够明确区分清楚时,该结束标记可以省略。思考:下面的表达式中,哪些宏替换函数的结束标记可以省略?&A.+52 ,&A.6-285 ,&A.BCDEFG。练习一、STR函数将数值型自变量转换为字符型时,函数值默认10位,试予以验证。二、试通过VARTYPE函数了解下列函数值的类型:AT函数、LEN函数、DATE函数、TIME函数、DATETIME函数、STR函数、VAL函数、DTOC函数、CTOD函数、VARTYPE函数。三、试用IIF函数写出为变量B赋值的赋值命令,要求:当变量A的值为正时,B赋以值8+20;当变量A的值为负时,B赋以值8-20;当变量A的值为0时,B赋以值8。四、先在命令窗口进行如下赋值:A=CLEB=XC=&B+YX=10Y=20然后在命令窗口输入下列各行并回车,看看现象或结果和自己预想的是否一致:?A,&A?B,&B?C,&C&AAR&A.AR五、练习其他函数。23 Visual FoxPro的表达式一、认识表达式即运算对象(常量、变量、函数)通过运算符号进行运算的式子。不同的运算符号有不同的优先级,运算时,优先级高的运算符号先算,优先级低的运算符号后算,同等优先级的自左至右进行运算。如10+30-20/5。为了让优先级低的运算符先算,应使用圆括号。注意:只能使用圆括号。表达式中的所有符号应并列书写,不能像数学中那样书写。单个运算对象,也认为是表达式(表达式特例)。二、数值表达式1、认识对数值型、货币型数据进行运算的式子,其值为数值型或货币型。2、运算符及优先级*或:乘方运算;*:乘法运算;/:除运算;%:求余运算;+:加运算;-:减运算。例:试写出下列算式的VFP表达式。三、字符表达式1、认识对字符型数据进行运算的式子,其结果仍为字符型。2、运算符及优先级+:将前后两个字符串进行合并,如abc +def,其结果为字符串abc def。-:将前后两个字符串进行合并,但将前面字符串尾部的空格挪到合并后的字符串尾部。如abc -def,其结果为字符串abcdef 。四、日期时间表达式1、认识有日期时间型数据参加运算的式子,其结果类型依情况而定。2、表达式实例日期+数值 或 数值+日期日期-数值注意:不能数值-日期日期-日期日期时间+数值 或 数值+日期时间日期时间-数值注意:不能数值-日期时间日期时间-日期时间五、关系表达式1、认识对类型一致的数据进行比较的式子,如A56,春节圣诞节等。如果比较成立,结果为逻辑值真,否则为假。2、比较符号比较符号又叫关系运算符。关系运算符:(见关系运算符)思考:关系表达式“1 2 3”的值是什么?3、VFP中数据大小的规定除使用$(属于)关系运算符的关系表达式外,关系表达式的运算结果和关系运算符两边数据的大小密切相关,因此,必须清楚VFP中关于数据大小的规定。1)数值型、货币型的大小同算术中大小。2)日期型、日期时间型的大小靠后的日期、时间大。3)逻辑型的大小真大于假。4)字符型的大小单个字符大小的规定当设置为Machine(机器)顺序时字符大小:空格数字字符(0到9)大写字母小写字母;汉字大小:常用汉字以拼音顺序排大小,如李小于张。当设置为PinYin(拼音)顺序时字符大小:空格数字字符(0到9)aAbB;汉字大小:以拼音顺序排大小,如李小于张。当设置为Stroke(笔画)顺序时字符大小:空格数字字符(0到9)aAbB;汉字大小:以书写笔画多少确定大小,笔画多的大。三种顺序的设置方法一:“选项”对话框中设置。方法二:用命令设置:set collate to Machineset collate to PinYinset collate to Stroke字符串大小的规定基本规则以等号右边的与左边进行比较,字符串自左至右,逐个字符进行比较,直到某个字符能分辨出大小为止。非精确比较方式(默认方式)在前面字符没能区分出大小的情况下,两个字符串的比较以右边字符串的结束而结束。精确比较方式在前面字符没能区分出大小的情况下,两个字符串的比较以最长字符串的结束而结束。说明:关系运算符“=”按当前的比较方式进行比较,“=”始终以精确方式进行比较。比较方式的设置方法一:“选项”对话框中进行。方法二:命令SET EXACT ON &设置为精确比较方式SET EXACT OFF &设置为非精确比较方式六、逻辑表达式1、认识对逻辑型数据进行运算的式子,结果为逻辑型。2、运算符及优先级.not.或not或!:非运算;.and.或and:与运算;.or.或or:或运算。(见逻辑运算符含义)思考:逻辑表达式“not .f. or .t. and .f.”的值?3、逻辑表达式、关系表达式的意义VFP中,使用关系表达式来表示单个条件,逻辑表达式表示组合条件。组合条件中,如果两个条件要求同时满足,两个条件之间使用“与”运算;如果两个条件只要求满足其中一个,两个条件之间使用“或”运算;如果要表示出某个条件的反条件,对该条件进行“非”运算。当逻辑表达式、关系表达式的值为真时,所表示的条件成立;当逻辑表达式、关系表达式的值为假时,所表示的条件不成立。例:试用关系表达式或逻辑表达式表示如下条件。1)A大于52)A不大于53)A大于5且B小于104)A大于5或B小于105)A在5和20之间6)A不在5和20之间4、说明一个逻辑表达式,它的运算对象往往是关系表达式,而关系表达式的运算对象又往往是数值表达式、字符表达式或日期时间表达式。也就是说,不同类型的运算符可能会出现在同一个表达式中,这时,运算符的优先顺序是:先进行数值运算、字符运算和日期时间运算,然后进行关系运算,最后进行逻辑运算。练习一、写出符合要求的表达式。1、5的3次方(用两种方法);2、已知今天星期6,10天后星期几;3、今天的日期;4、10天后的日期;5、今天大于明天;6、已知为变量A赋值了一个字符,试判断其是否是大写字母。二、易混淆的=和=关系运算符练习。1、说出下列关系表达式是否正确,正确的说出结果,然后上机验证。2=1+12=1+22=1+12=1+22=1+12=1+22=1+12=1+22、在字符比较方式为非精确比较方式下,说出下列各表达式的结果,然后上机验证。ABC=ABCABC=ABCAB=ABCAB=ABCABC=ABABC=AB3、在字符比较方式为精确比较方式下,说出下列各表达式的结果,然后上机验证。ABC=ABCABC=ABCAB=ABCAB=ABCABC=ABABC=AB三、练习本部分的其他内容。24 程序与程序文件一、程序的认识1、程序为完成某项任务,往往需要先后执行多个命令,那么这多个命令便是完成该任务的程序。2、程序文件(命令文件)为方便程序的使用,通常要将程序保存起来。保存程序的文件便叫程序文件或命令文件,其扩展名为PRG。2、程序的执行程序的执行即依次执行程序中的命令,执行程序就可以实现程序的功能。VFP中,主要有两种方法执行程序:1)在命令窗口通过“DO 程序文件”命令。此处程序文件的扩展名PRG可以省略。2)通过“程序”菜单中的“运行”功能。例:试通过两种方式执行命令文件DEMO.PRG中的程序。思考:你认为你能编写上面这个程序吗?二、VFP程序的组成1、表处理程序的基本框架初始设置打开数据库及表(使用SQL命令操作表时可不用预先打开表)对表进行操作关闭表及数据库恢复设置程序结束2、初始设置中的常用设置CLEAR:清除主屏幕上的显示。SET TALK OFF:关闭一些命令的不必要信息显示。3、恢复设置中的常用设置SET TALK ON:打开一些命令的必要信息显示。说明:初始设置是为了改变一些默认设置,一般应在程序结束前恢复这些改变到默认设置。4、程序结束命令一个程序的结束处应写上结束命令。VFP程序常用的结束命令有:RETURN:结束当前程序的执行,返回上级程序。(程序的返回)CANCEL:终止程序运行,清除所有似有变量,返回命令窗口QUIT:结束当前程序的执行,退出VFP系统。该命令一般作为最上层程序的结束命令。5、非表处理程序的基本框架初始设置数据准备数据处理数据输出恢复设置程序结束例:编写程序,计算圆的周长和面积,已知圆的半径为3。要求结果保留小数4位,程序结束后,不改变VFP的默认设置。6、程序的书写约定1)程序中,一个命令占一行(输完回车换行)。如果命令太长,可以在输入一个分号后回车换行继续输入。2)为了增强程序的可读性,程序的适当地方应加上注释的内容。注释内容纯粹是给看程序的人看的,执行程序时,计算机并不理会这些注释内容。VFP程序中的注释方法有三种:第一种:以NOTE开头的整行为注释内容;第二种:以*开头的整行为注释内容;第三种:在命令行后,以&开始直至行尾为注释内容。例:阅读PROG. PRG文件中的程序。三、程序文件的建立与修改1、建立1)通过“新建”“程序”功能2)通过“MODIFY COMMAND 程序文件”命令说明:该方式中,程序文件的扩展名可以省略。3)通过“MODIFY FILE 程序文件”命令说明:该方式中,程序文件的扩展名不能省略,改命令还可用于创建其它文件。2、修改1)通过“打开”“程序”功能2)通过“MODIFY COMMAND 程序文件”命令3)通过“MODIFY FILE 程序文件”命令例1:建立一程序文件DEMO1.PRG,在其中输入能显示当前日期的程序。例2:修改上题的程序,使之显示的是当前日期和时间。四、程序中,常用的输入命令1、INPUT命令1)格式:INPUT 输入提示 TO 变量2)功能:执行到该命令时,计算机将等待用户从键盘输入数据(输完按回车键),并将所输入的数据放入指定的变量中。3)说明:该命令接受多种类型的数据。输入时,数据的形式可以是表达式。命令中的“输入提示”是选项,但建议用上。“输入提示”用字符型数据表示。例:分析并执行PROG1.PRG程序。(注意输入字符串、数值与逻辑性常量的区别)2、ACCEPT命令1)格式:ACCEPT 输入提示 TO 变量2)功能:执行到该命令时,计算机将等待用户从键盘输入内容(输完按回车键),并将所输内容作为字符串放入指定的变量中。3)说明:不输内容直接回车,则变量获得一空串值。例:分析并执行PROG2.PRG程序。思考:“INPUT TO A , B”或“ACCEPT TO X , Y”命令对吗?3、WAIT命令1)格式:WAIT 提示信息 TO 变量 WINDOWS NOWAITTIMEOUT 等候秒数2)功能:执行到该命令时,计算机将等候用户按一下键(键盘键或鼠标键)。该命令常用来暂停程序的执行。3)说明:暂停期间的提示信息不提供时,默认为“按任意键继续”。提示信息可以让其出现在一个小窗口中(选WINDOWS项),默认为主窗口上。当有TO选项时,用户的按键信息将作为字符内容保存到变量中。用户按的若是回车或鼠标键等,变量得到的值将是空串。“TIMEOUT 等候秒数”用来设置该命令等待的时间(秒数),超过该时间不按键,程序将继续往下执行。这时,变量得到的值将是空串(如果有TO选项的话)。同时使用WINDOWS和NOWAIT选项时,该命令只是出现一提示信息而无等待功能。练习:WAIT WAIT “大家好!” WAIT “大家好!” WINDOWS WAIT “大家好!” WINDOWS TIMEOUT 3 WAIT “请输入一个值给变量X” TO X WINDOWS WAIT “大家好!” NOWAIT WINDOWS WAIT “大家好!” NOWAIT4、-GET/READ命令1)格式 行,列 SAY 提示信息 GET 变量READ2)功能-GET命令在指定位置依次显示提示信息和变量值,READ命令使得变量的值可以修改。3)说明该命令中变量可以是内存变量,也可以是字段变量。该命令中,变量应预先有个值。留意变量值的显示方式。-GET/READ命令称为格式化输入命令。例:分析并执行PROG3.PRG程序。五、程序中,常用的输出命令1、?或?命令在下一行(?)或当前行的后面(?)输出指定的输出项值。注意的是:命令后可以写出多个输出项,相邻的输出项间以逗号分隔。例:分析并执行DEMO.PRG程序。2、TEXT/EN
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 轨道交通环境影响评估-洞察及研究
- 粮食质量检测与控制技术-洞察及研究
- 高效器械清洗消毒技术-洞察及研究
- 社交媒体使用与心理健康的关系-第1篇-洞察及研究
- 智能美容护理效果评估-洞察及研究
- 舞台灯光控制系统软件架构设计-洞察及研究
- 2026届河北省石家庄栾城中学化学高二上期末教学质量检测模拟试题含答案
- 陕西商场施工方案
- 保温岩棉外墙油漆施工方案
- 百级净化夹层施工方案
- 请求权基础课件
- DB31 506-2020 集成电路晶圆制造单位产品能源消耗限额
- 【MOOC】工程制图解读-西安交通大学 中国大学慕课MOOC答案
- 教学成果奖申报
- 无人潜水器研发与应用合同
- 种植基地管理制度
- 人教版(2024年新版)七年级上册数学期中模拟试卷1(含答案)
- 辽宁省抚顺市新抚区2024-2025学年七年级上学期11月期中数学试题
- 农村自建房钻孔灌注桩的合同(2篇)
- 湖北中小学生命安全教育课程标准
- 人教版八年级上册物理重点实验知识总结
评论
0/150
提交评论