资源预览内容
第1页 / 共40页
第2页 / 共40页
第3页 / 共40页
第4页 / 共40页
第5页 / 共40页
第6页 / 共40页
第7页 / 共40页
第8页 / 共40页
第9页 / 共40页
第10页 / 共40页
亲,该文档总共40页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第二章 Visual FoxPro程序基础(2),第2章 Visual FoxPro程序基础,Contents,第2章 Visual FoxPro程序基础,2.5 常用函数,F(x) F(x)=3x+4 函数是一种数据运算或转换的程序。在Visual FoxPro系统中提供了一批标准函数,许多操作和功能都可以通过函数来完成,用户通过使用函数,能够以比较简便的方式完成某些特定的操作。 函数可以用函数名加一对圆括号加以调用,函数的一般形式是: 函数名(参数表) 参数表中的每个参数具有确定的类型。每个函数只能有一个运算结果,称为函数值或返回值,函数的返回值也具有确定的数据类型。,第2章 Visual FoxPro程序基础,2.5.1 数值函数,绝对值和符号函数 ABS() SIGN() 功能:ABS()函数给出一个数值表达式的绝对值。 SIGN()函数返回指定数值表达式的符号。当表达式的值为正、零和负数时,函数值分别为1、0和-1。 ?ABS(3-7),SIGN(3-7),SIGN(7-7),SIGN(7-3) 4 -1 0 1,第2章 Visual FoxPro程序基础,2.5.1 数值函数,求整数函数 INT() CEILING() FLOOR() 功能:INT()函数对的值取整。 CEILING()函数返回大于或等于指定数值表达式的最小整数。 FLOOR()函数返回小于或等于指定数值表达式的最大整数。 ?INT(3.14*10),CEILING(8.6) ,CEILING(-8.6), FLOOR(8.6) ,FLOOR(-8.6) 31 9 -8 8 -9,第2章 Visual FoxPro程序基础,2.5.1 数值函数,求最大值和最小值函数 MAX|MIN(,数值表达式3) 功能:求出各个表达式中的最大或最小值。 ?MAX(-59,-30),MIN(59,30,45), MIN(“土建“,“计算机“,“电气“) -30 30 电气,第2章 Visual FoxPro程序基础,2.5.1 数值函数,求平方根函数 SQRT() 功能:根据给的正数,求出平方根值。 若被开方数的小数位数超过系统设定值,则结果与被开方数的小数位数相同,否则为系统设定位数,默认为2位。 ?SQRT(9.123456),SQRT(16.0),16.0(1/2) 3.020506 4.00 4.00,第2章 Visual FoxPro程序基础,2.5.1 数值函数,四舍五入函数 ROUND(,) 功能:对进行四舍五入操作,其中为结果中小数部分的位数。当i为负数时,其绝对值为整数部分的位数。 ?ROUND(25.71634,2),ROUND(25.71634,-1),ROUND(25.71634,0) 25.72 30 26,第2章 Visual FoxPro程序基础,2.5.1 数值函数,求余数函数 MOD(,) 功能:给出表达式1除以表达式2的余数。算法同%符号。 ? MOD(5,3),MOD(5,-3),MOD(-5,3), MOD(-5,-3) 2 -1 1 -2 圆周率函数 PI() 功能:返回圆周率。该函数没有参数。 R=10 ?PI(),PI()*100 3.14 314.16,第2章 Visual FoxPro程序基础,2.5.1 数值函数,随机函数 RAND(数值表达式) 功能:返回一个在0-1之间的随机数,函数的值大于0而小于1。因为RAND()函数将随机产生一个数,所以每次运行的结果可能不一样 ?RAND(),INT(RAND()*100) 0.851 44,如何获得开区间值,第2章 Visual FoxPro程序基础,2.5.2 字符处理函数,宏代换函数 &. 功能:将的内容替换到指定位置。若用&函数替换的字符后面还有非空字符串,必须在它们之间用.表示内存变量结束。 NAME=“南丁格尔“ NURSE=“您好!&NAME“ ?NURSE NURSE1=“欢迎&NAME.护士“ ?NURSE1+“!“ 您好!南丁格尔 欢迎南丁格尔护士!,第2章 Visual FoxPro程序基础,2.5.2 字符处理函数,A=5 B=4 C=* ?A&C.B,A=5 B=20 C=A+B ?100+&C,建立空格函数 SPACE() 功能:建立一由空格组成的字符串,空格个数等于命令中数字表达式的值。 ?“|单“+SPACE(6)+“位|“ |单位| &表示一个空格,第2章 Visual FoxPro程序基础,2.5.2 字符处理函数,字符串长度函数 LEN() 功能:求字符串中所包含的字符个数。 ?LEN(“天河实业公司“) 求子串位置函数 AT(,) ATC(,) 功能:返回字符串1在字符串2中的位置数。数值型 如果有数值表达式,其值为n,则返回字符串1在字符串2中第n次出现的位置数。默认值为1,第2章 Visual FoxPro程序基础,2.5.2 字符处理函数,ZFC=“THISISAEXAMPLE!“ ?AT(“IS“,ZFC),ATC(“is“,ZFC,2),AT(“is“,ZFC,2) 3 6 0 子串出现次数函数 OCCURS(,) 功能:返回第一个字符串在第二个字符串中出现的次数。若一次也不出现,函数值为0。 ZFC=“THISISAEXAMPLE!“ ? OCCURS(“IS“,ZFC) 2,第2章 Visual FoxPro程序基础,2.5.2 字符处理函数,子串选取函数 SUBSTR(,子串长度) RIGHT(,) LEFT(,) 功能:从字符串表达式中取一子串。,第2章 Visual FoxPro程序基础,2.5.2 字符处理函数,功能: SUBSTR()函数的第二项规定了子串开始位置,第三项规定了子串长度。当第二项值大于第一项值长度时,得到一个空串;当第三项值大于起始位置到结尾宽度时,与省略此项等效,从起始位置一直取到字符串结束为止。 LEFT()函数从字符串的左侧取一个指定长度的子串作为函数值。 RIGHT()函数从字符串的右侧取一个指定长度的子串作为函数值。,第2章 Visual FoxPro程序基础,2.5.2 字符处理函数,DX=“天河实业公司“ ?LEFT(DX,4),SUBSTR(DX,5,2),RIGHT(DX,4) 删首尾部空格函数 RTRIM() LTRIM() ALLTRIM() 功能:RTRIM()函数删去字符串表达式尾部的空格。TRIM()函数与它的作用相同。LTRIM()函数删去字符串表达式首部的空格。ALLTRIM()函数删去字符串表达式首部和尾部的空格。 字符串表达式中间的空格不会删去。,第2章 Visual FoxPro程序基础,2.5.2 字符处理函数,KG=“公司“ KGR=RTRIM(KG) KGL=LTRIM(KG) KGA=ALLTRIM(KG) ?“+KG+“,“+KGR+“,“+KGL+“,“+KGA+“ ?LEN(KG),LEN(KGR),LEN(KGL),LEN(KGA) 公司 公司 公司 公司 7 6 6 5,第2章 Visual FoxPro程序基础,2.5.2 字符处理函数,大小写转换函数 UPPER() LOWER() 功能:UPPER()函数把表达式中的字母都变成大写,LOWER()函数把表达式中的字母都变成小写,其它字符不变。 ?UPPER(“Chang3Zhou2“),LOWER(“J=J+1“) CHANG3ZHOU2 j=j+1,第2章 Visual FoxPro程序基础,2.5.2 字符处理函数,字符串匹配函数 LIKE(,) 功能:比较两个字符串中对应位置的字符是否相匹配。若全部匹配函数返回.T.,否则返回.F.。可以包含通配符*和?。*可以与任何数目的字符相匹配,?可以与任何单个字符相匹配。 ?LIKE(“大“,“大学“),LIKE(“大*“,“大学“),LIKE(“大?“,“大学“) .F. .T. .F.,第2章 Visual FoxPro程序基础,系统日期和时间函数 DATE() TIME() DATETIME() 功能: DATE()函数返回当前系统日期(日期型);TIME()函数返回当前系统时间(字符型);DATETIME()函数返回当前系统日期时间(日期时间型)。 ?DATE(),TIME(),DATETIME(),2.5.3 日期和时间函数,第2章 Visual FoxPro程序基础,求星期几函数 CDOW() DOW() 功能:CDOW()函数给出星期几的英文名,为字符型函数。DOW()函数给出表示星期几的一个数字,为数值型函数。 从星期一到星期天,对应的数字依次为:2、3、4、5、6、7、1。 ?CDOW(2004-12-13),DOW(2004-12-13) Monday 2,2.5.3 日期和时间函数,第2章 Visual FoxPro程序基础,年份、月份和天函数 YEAR( | ) MONTH( | ) CMONTH( | ) DAY( | ) NYQ=2005/4/1 ?YEAR(NYQ),MONTH(NYQ),CMONTH(NYQ),DAY(NYQ) 2005 4 April 1,2.5.3 日期和时间函数,第2章 Visual FoxPro程序基础,时、分和秒函数 HOUR() MINUTE() SEC() 功能:HOUR()函数返回小时;MINUTE()函数返回分钟;SEC()函数返回秒数。 SJ=2005-3-9 9:20:15PM ?HOUR(SJ),MINUTE(SJ),SEC(SJ) &显示:21 20 15,2.5.3 日期和时间函数,第2章 Visual FoxPro程序基础,2.5.4 转换函数,求ASCII码函数 ASC() 功能:给出表达式值的首字符的ASCII码(十进制表示),范围从0到255。若第一个是汉字,则给出该汉字机内码的十进制表示。 ?ASC(“Wang“),ASC(“王“) 87 52725,第2章 Visual FoxPro程序基础,2.5.4 转换函数,转字符函数 CHR() 功能:显示代码值为的ASCII字符或汉字。 ?CHR(65),CHR(52725) A 王,第2章 Visual FoxPro程序基础,2.5.4 转换函数,数值转换成字符函数 STR(,长度,小数位数) 功能:把表达式的值转换成字符串。“长度”决定结果字符串的长度,包括其中的小数点和小数部分,“小数位数”决定小数部分的输出位数。若“长度”项规定长度不能表示该数,则返回由“*”组成的字符串。如果缺省,则原数中的小数部分将被丢掉;缺省则默认为10。 ?STR(3.1416,6,4),STR(3.1416,3),STR(112.534,5,3),STR(112.378,2) 3.1416 3 112.5 *,第2章 Visual FoxPro程序基础,2.5.4 转换函数,字符串转换成数值函数 VAL() 功能:当字符串以非数字字符开头时,函数值为零。VAL函数从左至右,把表达式值的各字符转换成数值,直到碰见非数值字符为止。转换时,打头的所有空格都被忽略掉,尾随空格作为非数值字符对待 ?VAL(“X=15“),VAL(“312.77A54“),VAL(“13.2E2“) 0.00 312.77 1320.00 X=VAL(“1342.8569“) ?X,STR(X,8,3),STR(X),STR(X,9,4
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号