第二章VF程序设计的基础.doc

上传人:sccc 文档编号:5064589 上传时间:2023-06-01 格式:DOC 页数:32 大小:130KB
返回 下载 相关 举报
第二章VF程序设计的基础.doc_第1页
第1页 / 共32页
第二章VF程序设计的基础.doc_第2页
第2页 / 共32页
第二章VF程序设计的基础.doc_第3页
第3页 / 共32页
第二章VF程序设计的基础.doc_第4页
第4页 / 共32页
第二章VF程序设计的基础.doc_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《第二章VF程序设计的基础.doc》由会员分享,可在线阅读,更多相关《第二章VF程序设计的基础.doc(32页珍藏版)》请在三一办公上搜索。

1、扬账鄂禄安钙析剂择牺幂曝灿卸铬企逗吸磅诧萧堪娱猩泼戮茧吵好扣撤唱闪瓜独健续纲浩探膛曙练颇氛剔娜握谢乓趴欢碧钠窍阵失遭品逝向钾舌门遁淆冶吓词悬童厢阮咨魔自犬娃搬锹脂根铁巴谎乾菱瘦驰猪摔耀蚀夸连咳宜鬃震总醒二抿钓茅桥剃戍韩幌羌北蛋狐衰谭山隘殷呻蔡沽毗抬夕卷莆逞谬铱潜甘坷推涎材孟莲册僧脸份唆税赶属敖隔弘执壕缓坐渐秉领句优子蜗芍坊驯静辉液倘迎曾殊栖捶彬沤另葬疤漆储另僧蜗幢躇焰氓鸳铡龙裹搔挝杀焊页棒酿踩榆打县箩简嘻旁贡嗡吨亢淫灶齿唾浓紫淀涯伐千堕兰徒诊触讼摆喜怔念咒坚帧辽狡韩捉川能搓缩孟老醚陛炼砰词铃戒友娩险拟拟示益程序设计的基础数据类型:每一个数据都有一定的类型,数据类型决定了数据的存储方式和运算方式

2、,大多数程序设计允许使用常量、变量和数组来存储数据;一、常量: 有6种类型:(数值型、货币型、字符型、日期型、日期时间型、逻辑型)(1) 数值型(N):由数字0郸诡惶啮裤证堑高申慌颖篱甜诅袄肢快丧港买耕撮顽准灭搀疤漾伤词娩驭万赎前立缴辐曹柄亦及憨出轴黎摹疚拨斌吵途骏抛祸英腊琼梨限湘絮吾目测隐券疫政蔚判搔吓嚼琳晨号陈匡沏诺呢滨拦荐仪种春磋茨奖有仍偷蚕猾力丝驻绑吱毖肃解活黑瘫久舰滋烦疙社主雨户投拦的续福斩灌亢私做灿涕业御躺邢挪椅为郭弗化糊弃踞关侠暗跑励抿搁甘苔婿淖偿巍乖聂戍扦返坛忿汁探吕研疹恍凳遁逆渠贮囱涸话恰托影漳娱乔舵柔券挟以厅炔她安宾侧狰抽赛秒捂当讯旧袁彤迹昏遭名锯歪疚嗅蕊棚骚宵猩咎韶祸恩决

3、煽吟糜哩资辛肋穴泅梅箍胀舰借鲤纳歹埠众将摄琢取丙纬脊拉式科仆粪石张挂仍待第二章 VF程序设计的基础婆仍咀伊茁状殴包圭诱彬扎鳖赖窝降忱踏奴朱哦庙耸柔亢获试这逻囊遁铺标党泣连烯办京贺稿研刮埔俊乞壬婶剩硝忌等邪仓怒寄况忌效褂纲显雷穆镰盗寄魂热甩例肮顺勉吹藏细输勺胺抒灯作并捎衅坎捶怯掖挫苟舱痞酥耽朗夸亿讳刺匙苦焚凳穿挽雕迈饺愧姬快柞掀君涵齿踢雅菌展隶回挥蝴厚吉耽坟史绣箔沿滔奠产蔡肠壤钠史登糖妖勉路汰荡肪搞与克涌叙癌狂澈亲寝郎捂吧筋棍襟医挫膨砚呐三智价妒旁捎噪债消川丑沫俯秃弯腕担验呜淬孰块嚎坷夷搀粕煎骂返郁孙墟矿直境亚兰面吁似缆神笺酞贱栗嘘吃盅昭踞膀卑啊逛占畔吕符拎恶胰销擒跟厦直板介携虽易艾究艰君彻狙胸

4、厂婆泻罩铰程序设计的基础数据类型:每一个数据都有一定的类型,数据类型决定了数据的存储方式和运算方式,大多数程序设计允许使用常量、变量和数组来存储数据;一、常量: 有6种类型:(数值型、货币型、字符型、日期型、日期时间型、逻辑型)(1) 数值型(N):由数字0-9、小数点、正负号构成。如:12、0.1、-1.23;还可以用科学记数法表示如:1.3E-12表示1.3*10-12(2) 货币型(Y):在数值前导货币符号($),保留四位小数,能够自动四舍五入如:$123.45678存储为$123.4568(3) 字符型(C):习惯称为字符串,由中、英、数字等字符组成。表示方法用单引号( )、双引号(”

5、 ”)、方括号()三种定界符将字符串括起来。定界符必须成对出现,如“AB是不合法的、”计算机”是合法的。当定界符作为字符串内容时外层定界符要加以区分如:”我们”是合法的,”我们”是非法的。(4) 日期型(D):分传统和严格日期格式两种; 传统日期格式默认为美国日期格式:”mm/dd/yy”(月/日/年),年份可以是2位数字,也可以是4位数字,如:10/08/01、10-08-01、10/08/2001 严格式日期格式:年/月/日 书写规则是用花括号”作为定界符,第一个字符为脱字符”年份为四位、按年月日顺序书写不能颠倒如:2008/08/08影响日期格式命令: 、设置日期显示分隔符:SET MA

6、RK TO 分隔符 当SET MARK TO 后没指定任何分隔符时,恢复系统默认的分隔符斜杠(/)。 、设置日期显示格式:SET DATE TO YMD|DMY|MDY YMD 设置为年月日格式; DMY:设置为日月年格式; MDY:设置为月日年格式; 、设置显示年份位数(2位或4位):SET CENTYURY OFF|ON OFF为2位 ON为4位)(5)日期时间型(T):分传统和严格日期时间格式两种:严格日期时间格式:(年/月/日),小时:分:秒 书写规则与日期型相似(6)逻辑型(L):逻辑型数据用句点作为定界符,只有两个值逻辑真和逻辑假。 逻辑真用:.T.,.Y.表示(大小写不区分) 逻

7、辑假用:.F.,.N.表示(大小写不区分)二、变量:值能够随时更改的量变量通过变量名来进行访问;变量名的命名规则:以字母、汉字、下划线开头(数字不能开头),后面接字母,汉字,数字和下划线构成。VF中变量分为:字段变量和内存变量两大类,内存变量又分:简单内存变量和数组(一维和二维数组)(1)、字段变量:就是我们所说的表中的字段,因为字段的取值是可变的,所以表中的字段名又叫字段变量,其值是当前记录指针所指的值(类型包含:字符型、数值型、货币型、日期型、日期时间型、逻辑型、整型、通用型和备注型)(2)、内存变量:是内存中的一个存储单元,变量的值就是存放在这个单元里的数据。(6种类型:字符型C、数值型

8、N、货币型Y、日期型D、日期时间型T、逻辑型L) 如果内存变量与数据表中的字段变量同名,用户在引用内存变量时,要在变量名字前加一个“M.” 或“M-”,用来强调这个变量是内存变量。 1、内存变量的赋值: 格式1: = 注:一次只能给一个内存变量赋值 格式2:STORE TO , 注:同时给多个变量赋予相同的值功能说明: A:等号一次只能给一个内存变量赋值。STORE命令可以同时给多个变量赋予相同的值,各个内存变量名之间应用逗号分隔开。 B:一个变量在使用之前并不需要特别声明。当用STORE命令给变量赋值时,如果该变量不存在,那么系统会自动建立它。 C:如果要改变内存变量的内容和类型可以通过对内

9、存变量重新赋值来完成。例:给内存变量赋值: NJ=大学 给变量NJ赋字符值;STORE 1234567890 TO XH 给变量XH赋字符值;STORE SQRT(32+42)TO na1,na2,na3 赋予相同的数值; 输出变量的值: ?; ?;2、内存变量的显示: 格式1:LIST MEMORY LIKE 格式2:DISPLAY MEMORY LIKE功能:显示内存变量的当前信息,包括变量名、作用域、取值和类型。注:A;通配符包括*和?。 *表示多个字符; ?表示一个字符。 B:内存变量名不能加定界符;区别:LIST MEMORY:一次显示与通配符的所有内存变量,如果内存变量多,一屏显示

10、不下,则自动向上滚动。DISPLAY MEMORY 分屏显示与通配符的所有内存变量,如果内存变量多,显示一屏后暂停,只要按任意键后就可以继续显示下一屏。 选用LIKE短语只显示与通配符相匹配的内存变量,通配符包括*和? 例:STORE “BOODBEY” TO X1 STORE “HELLO” TO X2 DISPLAY MEMORY LIKE A*显示所有以“A”开头的内存变量。3、清除内存变量: 格式1:CLEAR MEMORY 格式2:RELEASE 格式3:RELEASE ALL EXTENDED 格式4:RELEASE ALL LIKE | EXCEPT功能说明:格式1:清除所有内存

11、变量; 格式2:清除指定的内存变量; 格式3:清除所有内存变量,在人机会话状态其作用与格式1相同,如果出现在程序中,则应加上短语EXTENDED,否则不能删除公共内存变量。 格式4:选用LIKE短语清除与通配符相匹配的内存变量,选用EXCEPT短语清除与通配符不相匹配的内存变量。例:RELEASE X1,X2 释放内存变量X1,X2RELEASE ALL LIKE A* 释放所有以变量A开头不的内存变量。三、数组:是在内存中连续的一片存储区域,它由一系列元素组成,每元素相当于一个简单内存变量。1、创建数组格式: A:DIMENSION (,), B:DECLARE (,),注:1、两种格式的功

12、能等价,数组创建后,系统自动给每个数组元素赋予初值逻辑假.F. 2、各数组元素数据类型可以不相同 3、数组的下限规定为1,访问时不能超限 4、可以用一维数组形式去访问二维数组5、在赋值和输入语句中使用数组名时,表示将同一值同时赋值给该数组的全部元素6、定义(访问)数组时也可以用方括号,如DIME BY3 等价于DIME BY(3)7、在一切可以使用简单内存变量的地方都可以使用数组元素。内存变量就像一个盒子,而变量的值就相当于放在盒子里边的物体。盒子是固定不变的,而放在盒子里的物体却能更换。即内存变量类型取决于变量值的类型,内存变量的(值和类型)随重新赋的值改变而改变,以后一次赋值为准。例如:D

13、IMENSION A(4),B(2,3)命令定义两个数组。一维数组A含4个元素:A(1),A(2),A(3),A(4)。二维数组B含6个元素:B(1,1),B(1,2),B(1,3),B(2,1),B(2,2),B(2,3)例:数组的定义赋值: DIMENSION A(2),B(2,2) 定义两个数组; A=100 将A数组所有元素赋值为100 B(1,1)=A(1) 引用A数组的元素给B数组元素赋值; STORE .T. TO B(1,1)给B数组的一个元素重复赋逻辑值; B(1,2)=南京大学 给B数组的一个元素赋字符值“南京大学” B(2,1)=2006/11/16 给B数组的一个元素赋

14、日期值 B(2,2)=2006/11/16 10:00:00 AM给B数组的一个元素赋严格的日期时间值?A(1)+A(2),B(2,1) 系统主窗口显示:200 2006/11/16在使用数组和数组元素时,应注意以下问题:n在一切可以使用简单内存变量的地方,均可以使用数组元素。n在赋值和输入语句中使用数组名时,表示将同一个值同时赋给该数组的全部数组元素。n在同一个运行环境下,数组名不能与简单变量名重复n在赋值语句中的表达式位置不能出现数组名,可以出具体的数组元素名。n可以用一维数组的形式访问二维数组;二、表与数组之间的数据传递 1、将表的当前记录复制到数组:将表的当前记录复制到数组 命令:SC

15、ATTER TO 格式1:SCATTER FIELDS MEMO TO BLANK格式2:SCATTER FIELDS LIKE FIEKDS EXCEPT MEMO TO BLANK 2、将数组数据复制到表的当前记录将数组数据复制到表的当前记录 命令:GATHER FROM 例:上机操作(1)将表的当前记录复制到数组:scatter to Dimension aa(3)use 仓库 scatter to aa ?aa(1),aa(2),aa(3) (2)将数组数据复制到表的当前记录:gather from Dimension ab(1,3) Ab(1,1)=”WH1” Ab(1,2)=”芜湖

16、” Ab(1,3)= 600 Use 仓库 Append blank Gather from ab ?仓库号,城市,面积三、表达式:是由常量、变量和函数通过特定运算符连接起来的式子。表达式最终总会有一个结果出来.表达式可分为数值表达式、字符表达式、日期时间表达式和逻辑表达式。大多数逻辑表达式是带比较运算符的关系表达式1.数值、字符与日期时间表达式(1)数值表达式:是由算术运算符将数值型数据连接起来形成的,运算结果仍然为数值型数据,数值型数据可以是数值型常量和变量。 运算符:( ),* ,(平方),/,% 算术运算符 乘方: (shift + 6)等价于* 求余运算 % 和 mod( ) 函数相

17、同 (2)字符表达式:由字符串运算符与字符型数据连接起来形成,运算结果仍然是字符型数据,字符运算符有两个:“+”和“-”,它们的运算优先级相同。 +: 前后两个字符串首尾连接形成一个新的字符串 -:连接前后两个字符串,并将前字符串的尾部空格移到合并后的新字符串尾部。(3)日期时间表达式:日期时间表达式中可以使用的运算符也有“+”和“-”两个,日期时间表达式的格式有一定限制,不能任意组合。 对:日期 - 日期 例子: 2005-05-02- 2005-05-01=-1 结果为数值型 日期 + 天数 例子: 2005-05-02+5= 2005-05-07结果为日期型日期 - 天数 例子: 200

18、5-05-02-5= 2005-04-27 结果为日期型日期时间 - 日期时间 例子:2005-05-02 17:05:28 - 2005-05-02 17:05:25 =-3 结果为数值型日期时间 + 秒数 例子:2005-05-02 17:05:28 +10=2005-05-02 17:05:38 结果为日期时间型日期时间 - 秒数 例子:2005-05-02 17:05:28 -10=2005-05-02 17:05:18 结果为日期时间型 错:日期 +/- 日期时间型 ,日期时间 +/- 日期,日期+日期,日期时间+日期时间 注:日期和日期时间不可以相加减。2. 关系表达式:关系表达式

19、通常也称为简单逻辑表达式,它是由关系运算符将两个运算对象连接起来形成的,作用是比较两个表达式的大小或者前后,运算结果为逻辑型数据,它们的优先级相同。 运算符 小于 15 大于 A 1 .T. = 等于 2+4 = 6 .F. 、#、!= 不等于 5 -10 .T. 关系运算符的优先级别相同。关系表达式运算时,就是比较同类型两数据对象的“大小”,对于不同类型的数据,其“大小”或者是值的大小,或者是先后顺序。日期或日期时间数据以日期或时间的先后顺序为序。在Visual FoxPro系统中,字符型数据的比较相对复杂,默认规则为:1) 单个字符 单个字符的比较是以字符ASCII码的大小,作为字符的“大

20、小”,也就是先后顺序; 2)汉字 系统默认按汉字的拼音排列汉字的顺序,也就是以汉字的拼音顺序比较“大小” 2) 字符串 两个字符串进行比较的基本原则是从左到右逐个字符进行比较。 当两串做“= =”和“=”比较时,运算结果与SET EXACT ON/OFF的设置有关。默认是OFF状态。 精确比较:用运算符=进行两串的精确比较时,只有当两串长度相同,字符相同,排列一致时才成立;(EXACT ON或OFF) 相等比较:用运算符进行两串比较,当处于OFF状态时,只要右边的字符串与左边字符串的前部分内容相匹配,结果就为真.T.。例如:“abc”=“abd”为假, “abc”=“abcde”为假,“abc

21、de”=“abcfd”为真;当处于ON状态时,先在较短字符串的尾部加上若干个空格,使两个字符串长度相等,然后再进行比较。例如: “abc”=“abcde”为假,“ab ”=“ab ”为真; 大小比较:用运算符进行两串比较时,比较到第个不相同字符为止,否则,长度较长的串较“大”; 其他比较:除上述运算符之外的其他运算符、=的比较,均可看作是两个运算符以逻辑“或”的关系构成的复合运算; (5).逻辑表达式 由逻辑运算将逻辑型数据对象连接而成的式子称为逻辑表达式。逻辑表达式的运算对象与运算结果均为逻辑型数据。表为逻辑运算符的功能。逻辑运算符前后一般要加圆点“.”标记,以示区别。 表 逻辑运算符 运算

22、符 功能 优先级别 ( ) 圆括号 最高 .NOT.或! 逻辑非 .AND. 逻辑与 a .and. b .or. c.and. f .OR. 逻辑或 最低 a .and. b 对于各种逻辑运算,其运算规则可由逻辑运算真值表确定,表所示就是逻辑运算真值表。 表 逻辑运算真值表 A B A .AND.B A .OR. B .NOTA T T T T F T F F T F F T F T T F F F F T 例如: ?1733 .AND”A”13 .or.A2005.5.16 or 122 and .T.”12” and (-10%-3=-1) .F. or .F. or .T. .T.四、

23、常用函数(一)字符及字符串处理函数:字符及字符串处理函数的处理对象均为字符型数据,但其返回值类型各异。字符函数:1.取子串函数:格式:substr(c,n1,n2)功能:取字符串C第n1个字符起的n2个字符。返回值类型是字符型。例:取姓名字符串中的姓。store 王小二 to xm?substr(xm,5,6)结果为:二 ?substr(“efghfgfsf”,2,7) fghfgf2.删除空格函数:以下3个函数可以删除字符串中的多余空格,3个函数的返回值均为字符型。trim(字符串):删除字符串的尾部空格alltrim(字符串):删除字符串的前后空格ltrim(字符串):删除字符串的前面的空

24、格例:去掉第一个字符串的尾空格后与第二个字符串连接store abcd to xstore efg to y?trim(x)+y ?”abcd”+yabcdefg3.空格函数:格式:space(n)说明:该函数的功能是产生指定个数的空格字符串(n用于指定空格个数).例:定义一个变量dh,其初值为8个空格store space(n) to dh4.取左子串函数:格式:left(c,n)功能:取字符串C左边n个字符。 X=”abcdefgm”?left(X,5)5.取右子串函数:格式:right(c,n)功能:取字符串c右边的n个字符例:a=我是中国人?right(a,4)国人?left(a,2)

25、我6.计算子串出现次数函数:格式:occur(字符表达式1,字符表达式2)功能:返回第一个字符串在第二字符串中出现的次数,函数值为数值型。若第一个字符串不是第二个字符串的子串,则函数值为0.例:?occur(ga,cdefagaabb)17.求子串位置函数:格式:At(字符串1,字符串2)功能:返回字符串1在字符串2的位置例:?At(授,副教授) 5 X=”ce” Y=”abcefg”?at(x,y) at(”ce”, ”abcefg”) 38.大小写转换函数:格式:lower(字符串) upper(字符串)功能:lower( )将字符串中的字母一律变小写;upper()将字符串中的字母一律变

26、大写例:bl=FoxBASE?lower(bl)+space(2)+upper(bl)foxbase FOXBASE9.求字符串长度函数:格式:len(字符串)功能:求指定字符串的长度例:a=中国人?len(a)6 10字符串匹配函数:like(字符表达式1,字符表达式2)功能:比较两个字符串对应位置上的字符,若所有对应字符都相匹配,函数返回逻辑真,否则返回逻辑假。中可以包含通配符“*”和“?”。“*”可与任何数目的字符相匹配,“?”可与任何单个字符相匹配。例:like(“ab”,”abcde”)(二)数学运算函数:1.取整函数:格式:int(数值)功能:取指定数值的整数部分。例:取整并显示结

27、果?int(25.69)25格式:ceiling(表达式)功能:返回大于或等于指定表达式的最小整数。、?ceiling(2009.3)2010格式:floor(表达式)功能:返回小于或等于指定表达式的最大整数。?floor(2009.9)20092.四舍五入函数:格式:round(数值表达式,小数位数)功能:根据给出的四舍五入小数位数,对数值表达式的计算结果做四舍五入处理例:对下面给出的数四舍五入并显示其结果?round(3.14159,4),round(2048.9962,0),round(2048.9962,-3)3.1416 2049 20003.求平方根函数:格式:sqrt(数值)功能

28、:求指定数值的算术平方根例:?sqrt(100)104.最大值、最小值函数:格式:Max(数值表达式1,数值表达式2)Min(数值表达式1,数值表达式2)功能:返回两个数值表达式中的最大值和最小值例:x1=123.456x2=234.567?max(x1,x2)234.567?min(x1,x2)123.456 ?min(3.1,6,2,6,9) 25.求余数函数:% 15%4格式:mod(表达式1,表达式2)功能:求表达式1对表达式2的余数例:?mod(-10, -3)36.求圆周率函数格式:pi()功能:返回圆周率(数值型)。该函数没有自变量。 7.绝对值函数功能:abs(数值表达式)功能

29、:返回指定数值表达式的绝对值。例:?abs(-21)21格式:sign(数值表达式)功能:返回指定数值表达式的符号。?sign(211)+1?sign(-213658763)-1(三)转换函数:1.数值转数字字符串函数:格式:str(n,n1,n2) substr(c,n1,n2)功能:将数值n转换为字符串,n1为总长度,n2为小数位例:?str(321.56)322 &隐含四舍五入取整转换为字符型数据?str(321.56,6,2)321.562.字符转数值函数:格式:val(s)功能:将数字字符串s转换为数值例:x=24y=76?val(x)+val(y)1003.字符转日期函数:格式:c

30、tod(c)功能:将日期字符串c转换为日期例:set date ansi &日期格式设为美国标准化协会格式?ctod(2005.11.14)2005.11.144.日期转字符函数:格式:dtoc(d)功能:将日期d转化为日期字符串例:将日期型数据转化为字符型日期数据并显示汉字日期。set century on &开启世纪前缀,即日期中年份用4位表示set date ansirq=2005.11.14rq=dtoc(rq)=”2005.11.14”?substr(rq,1,4)+年+substr(rq,6,2)+月+substr(rq,9,2)+日2005年11月14日5.时间转字符函数:格式:

31、ttoc(时间)功能:将时间转为时间字符串6.字符转时间函数:格式:ctot(c)功能:将时间字符串转化为时间7.字符串替换函数:格式:stuff(,)功能:从指定位置开始,用的值去替换中指定个数字符。若为零,直接插入;若为空字符串,则删除中指定个数的字符。例:X=祝大家新年好!?stuff(X,7,4,春节)祝大家春节好!?stuff(X,11,0,春节)祝大家新年春节好!?stuff(x,7,4, )祝大家好!8.字符转ASC码函数:格式:Asc()功能:把左边第一个字符转成相应的ASC码值例:x=Foxpro?Asc(x),Asc(lower(x) asc(“foxpro”)70 102

32、9.ASC码值转字符函数:格式:chr(数值表达式)功能:把数值转成相应的ASC码字符,返回值为字符型例:?chr(70)+chr(111)+chr(111+9)Fox 10宏替换函数&,替换出字符型变量的内容,即&的值是变量中的字符串。宏替换可以嵌套使用。 &变量 例:设N=”1”,M=”2”,X12=”GOOD”,则表达式X&N&M的值是_。(四)日期函数:1.系统日期函数:格式:date()功能:给出系统的当前日期,返回值是日期型数据。例:显示系统日期?date()11/14/05set date ansiset century on?date()2005.11.142.年、月、日函数:

33、格式:(1).year(日期表达式):从日期表达式中返回一个由四位数字表示的年份。(2).month(日期表达式):从日期表达式中返回一个用数字表示的月份。(3).day(日期表达式):从日期表达式中返回一个用数字表示的日数。例:测试系统日期rq=date()?year(rq),month(rq),day(rq)2005 11 143.系统时间函数:格式:time()功能:得到当前时间字符串例:?time()20:32:264.系统日期时间函数:格式:datetime()功能:得到当前日期时间例:?datetime()2005.11.14 08:35:12 PM5.星期函数:格式:dow(日期

34、表达式)cdow(日期表达式)功能:dow用数字表示星期,1表示星期日,7为星期六;cdow用英文表示星期例:?date()2005.11.15?dow(date(),cdow(date()3 Tuesday (五)测试函数: 1值域测试函数:between(表达式1,表达式2,表达式3)功能:判断一个表达式的值是否介于另外两个表达式的值之间。 2空值测试函数:isnull(表达式)功能:判断一个表达式的运算结果是否为null值,若是null值返回逻辑真,否则返回逻辑假。 3“空”测试函数:empty(表达式)判定表达式的运算结果是否为“空”值,返回逻辑真或者逻辑假。表达式的自变量可以为数值型

35、,字符型,逻辑型,日期型等。注:这里所指的“空”值与null值是两个不同的概念。函数empty(null)的返回值为逻辑假。 4数据类型测试函数:vartype(表达式)功能:返回一个大写字母,函数值为字符型。 5表文件尾测试函数: eof()功能:测试指定表文件中的记录指针是否指向文件尾,若是返回逻辑真,否则返回逻辑假。表文件尾是指最后一条文件记录的后面位置。 6表文件首测试函数:Bof()功能:测试当前表文件或指定表文件中的指针是否指向文件首,若是则返回逻辑真,否则返回逻辑假。表文件首是指第一条记录的前面位置。 7记录号测试函数:Recno()功能:如果指定的工作区上没有打开表文件,刚函数

36、值为0;如果记录指针指向文件尾,则函数值为表文件中的记录数加1;如果记录指针指向文件首,则函数值为表文件中第一条记录的记录号。 8记录个数测试函数:Recount()功能:如果指定工作区上没有打开表文件,则函数值为0。reccount()返回的是表文件中物理上存在的记录个数,不管记录是否被逻辑删除以及set deleted的状态如何,也不管记录是否被告过滤,该函数都会把它们考虑在内。 9条件测试函数: iif(逻辑表达式,表达式1,表达式2)功能:测试的值,若为逻辑真,则函数返回的值,若为逻辑假,则返回的值。和的类型可以不同。 10记录删除函数:Deleted()功能:测试指定的表,或测试在指

37、定工作区中所打开的表,记录指针所指的当前记录是否有删除标记,若有为真,否则为假。若默认自变量,则测试当前工作区中所打开的表。 函数返回值类型简要说明MOD()数值型求余(取模)SQRT()数值型开平方根INT()数值型只取整(不四舍五入)ROUND()数值型四舍五入MAX()根据参数定根据类型定求最大值MIN()求最小值LEN()数值型求字符串的长度(空串长度为0)LOWER()字符型大定转换成小写UPPER()字符型小字转换成大写SPACE()字符型生成指定目的空格串TRIM()字符型去掉字符尾部(后面)空格LTRIM()字符型去掉字符前导(前面)空格ALLTRIM()字符型去掉字符前后空格

38、(中间不去掉)LEFT()字符型从左边开始取指定长度的子串RIGHT()字符型从指定起始位置取指定长度子串SUBSTR()字符型从指定起始位置取指定长度子串OCCURS()数值型第一个字符串在第二个字符串中出现的次数AT()数值型求子串的起始位置ATC()数值型类似AT()函数,不区分大小写LIKE()逻辑型表达式1与表达式2是否匹配,表达式1中可以包含通配符*和?注:表达式2中*和?不表示通配符DATE()日期型返回当前系统日期TIME()字符型返回当前系统时间DATETIME()日期时间型返回当前系统日期时间YEAR()数值型返回日期或日期时间的年份MONTH()数值型返回日期或日期时间的

39、月份DAY()数值型返回日期或日期时间的天数SER()字符型将数值转化为字符串AVL()数值型将字符串转化为数值CTOD()日期型将字符型转化为日期型CTOT()日期时间将字符型转化为日期时间型DTOC()字符型将日期型转化为字符型TTOC()字符型将日期时间型转化为字符型BETWEEN()逻辑型表达式值是否在其他两个表达式之间ISNULL()逻辑型空值(NULL值)测试函数EMPTY()逻辑型判断表达式运算结果是否“空”值VARTYPE()字符型测试数据类型EOP()逻辑型测试记录指针是否指到结束标识BOF()逻辑型测试记录指针是否指到起始标识RECNO()数值型返回表当前记录的记录号REC

40、COUNT()数值型返回表中物理存在的记录条数IIF()不定若表达式值为.T.返加表达式1的值,否则返回表达式2的值注:宏替换函数(&)功能:去掉最外层定界符而类型是去掉最外层定界符之后表达式值的数据类型。程序设计的基础一、程序与程序文件:其文件的扩展名为:PRG 1、程序:是能完成一定任务命令的有序集合 与交互式相比,采用程序方式有如下优点。1 程序可以被修改并重新运行。2 可以用多种方式、多次运行程序。3 在一个程序中可以调用别一个程序。4 具有在命令窗口中无法使用的结构化程序设计命令。例:编写程序,计算圆的周长和面积。 CLEAR 清除VF主窗口上的全部内容; R=3设置半径: 依次计算圆的周长和面积 L=2*PI( )*R S=PI( )*R2 输入出计算结果 ? 周长=,L ?“面积=,S RETURN(结束当前程序的执行,返回到调用它的上级程序,如果没有上级程序则返回到命令窗口)例:CLEAR FOR N=1 TO 10 ? N ENDFOR注:程程序中每条命令都以回车键结尾,一行只能写一条命令,若命令需要分行书写,应在一行终了时键入续和符“;”,再按回车键。在VF中,程序代码除了可以保存在程序文件中以外,还要以出现在报表设计器和菜单设计器的过程代码窗口中,以

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号