7.函数
Visual FoxPro 系统中,函数是一段程序代码,用来进行一些特定的运算或操作,支持和完善命令的功能,帮助用户完成各种操作与管理。
Visual FoxPro 系统有数百种不同函数。按函数提供方式,可分为系统函数和用户自定义函数;按函数运算、处理对象和结果的数据类型,可分为数值型函数、字符型函数、逻辑型函数、日期时间型函数、数据转换函数等,按函数的功能和特点,可分为数据处理函数、数据库操作函数、文件管理函数、键盘和鼠标处理函数、输出函数、窗口界面操作函数、程序设计函数、数据库环境函数、网络操作函数、系统信息函数和动态数据操作函数等。
Visual FoxPro 的函数由函数名与自变量两部分组成。标准函数是Visual FoxPro 系统提供的系统函数,其函数名是Visual FoxPro 保留字,自定义函数是用户自已定义的函数,函数名用户指定;自变量必须用圆括号对括起来,如有多个自变量,各自变量以逗号分隔;有些函数可省略自变量,或不需自变量,但也必须保留括号;自变量数据类型由函数的定义确定,数据形式可以是常量、变量、函数或表达式等。函数是一类数据项,除个别(如宏替换)函数外,函数都不能像命令一样单独使用,只能作为命令的一部分进行操作运算。
(1).数值函数
数值函数用于数值运算,其自变量与函数都是数值型数据。
1).取绝对值函数ABS( )
【格式】ABS(<数值表达式>)
【功能】计算数值表达式的值,并返回该值的绝对值。
【例】 ? ABS(-43.29) 43.292).指数函数EXP( )
【格式】EXP(<数值表达式>)
【功能】求以e 为底、数值表达式值为指数的幂,即返回该数的指数值。
3).取整函数INT( )
【格式】INT(<数值表达式>)
【功能】计算数值表达式的值,返回该值的整数部分。
【例】 ? INT(-76.93) -764).自然对数函数LOG( )
【格式】LOG(<数值表达式>)
【功能】求数值表达式的自然对数。数值表达式的值必须为正数。
5).平方根函数SQRT( )
【格式】SQRT(<数值表达式>)
【功能】求非负数值表达式的平方根。
【例】 ? SQRT(5*5)
5.00
6).最大值函数MAX( )和最小值函数MIN( )
【格式】
MAX(<数值表达式1>,< 数值表达式2>[,< 数值表达式3>...])
MIN(<数值表达式1>,< 数值表达式2>[,< 数值表达式3>...])
【功能】返回数值表达式中的最大值MAX( )和最小值MIN( )。
7).求余数函数MOD( )
【格式】MOD(<被除数>,<除数>)
【功能】返回<被除数>除以<除数>得到的余数值。
【说明】在求摸运算中应注意以下几点:
(1) 除数不能为0。
(2) 除数为正数,返回正数;如果为负数,返回负数。
(3) 如果被除数与除数能够整除,结果为0。
(4) 如果被除数与除数不能整除,且被除数与除数同号,则结果为被除数除以除数而得到的余数。即:MOD(X1,X2)=X1-INT(X1/X2)*X2 。
(5) 如果被除数与除数不能整除,且被除数与除数异号,则结果为被除数除以除数而得到的余数再加上除数。来源:考试大
即:MOD(X1,X2)=X1-INT(X1/X2)*X2+X2 。
【例】 ? MOD(10,3) &&结果为:1
? MOD(-10,-3) &&结果为:-1
? MOD(-10,3) &&结果为:2
? MOD(10,-3) &&结果为:-2
8).四舍五入函数ROUND( )
【格式】ROUND(<数值表达式1>,< 数值表达式2>)
【功能】返回数值表达式1四舍五入的值, 数值表达式2表示保留的小数位数。
【ày】 ? R0UND(3.14159£?4),ROUND(1234.9962,0),ROUND(1234.567,-1)
3.1416 1235 1230
9).π函数PI( )
【格式】PI( )
【功能】返回常量π的近似值。
10)。随机函数RAND( )
【格式】RAND(<数值表达式>)
【功能】产生0-1之间的随机数。
(2).字符函数
字符函数是处理字符型数据的函数,其自变量或函数值中至少有一个是字符型数据。函数中涉及的字符型数据项,均以cExp表示。
1).子串位置函数
【格式】AT(,< cExp 2>)
【功能】返回串cExp1在串cExp2中的起始位置。函数值为整数。如果串cExp2不包含串cExp1,函数返回值为零。
【例】 X=”Visual FoxPro 8.0”
? AT(”Fox”£?X) && 显示结果为 8
? AT(”fox”£?X) && 显示结果为 0
? AT(”o”£?X) && 显示结果为 9
? AT(”o”£?X £?2) && 显示结果为 13
2).取左子串函数LEFT( )
【格式】LEFT(,)
【功能】返回从cExp串中第一个字符开始,截取nExp个字符的子串。
3).取右子串函数RIGHT( )
【格式】RIGHT(,< nExp>)
【功能】返回从cExp串中右边第一个字符开始,截取nExp个字符的子串。
4).取子串函数SUBSTR( )
【格式】SUBSTR (, [,] )
【功能】返回从串cExp 中第nExp1 个字符开始,截取nExp2 个字符的子串。
【例】 CN=”ABCDEFG” ? SUBSTR(CN,4,2),SUBS(CN,1,4),SUBS(CN,6,3) DE ABCD FG
若省略〈长度〉,或者〈长度〉超过从〈起始位置〉到末尾的长度,则截取的子字符串为从〈起始位置〉到〈字符串表达式〉末尾的所有字符。www.Examda.CoM考试就到考试大
例如: ? SUBSTR(”计算机程序设计教程”,11) 设计教程
5).字符串长度函数LEN( )
【格式】LEN()
【功能】返回cExp串的字符数(长度)。函数值为N型。
【例】 ? LEN(”Visual FoxPro8.0”)16
6).删除字符串前导空格函数LTRIM( )
【格式】LTRIM()
【功能】删除cExp串的前导空格字符。
7).删除字符串尾部空格函数RTRIM( ) | TRIM( )
【格式】RTRIM | TRIM()
【功能】删除cExp串尾部空格字符。
8).空格函数SPACE( )
【格式】SPACE ()
【功能】返回一个包含nExp 个空格的字符串。
【例】 X=SPACE(2)+”学生情况”+ SPACE(4) ?
LEN(X),LEN(TRIM(X)),LEN(LTRIM))14 10 129).字符串替换函数STUFF( )
【格式】STUFF(,,,)
【功能】从nExp1指定位置开始,用cExp2串替换 cExp1串中nExp2个字符。
【ày】X1="ABCDEFG"
X2="abcd"
? STUFF(X1,4,3,X2),STUFF(X1,1,4,X2)
ABCabcdG abcdEFG
10).大小写转换函数LOWER( ) 和UPPER( )
【格式】LOWER ()
UPPER ()
【功能】LOWER( )将cExp串中字母全部变成小写字母,UPPER( )将cExp串中字母全部变成大写字母,其它字符不变。
11).字符匹配函数LINK( )
【格式】LIKE(,)
【功能】比较两个字符串对应位置上的字符,若所有对应字符都相匹配,函数返回逻辑真(.T.),否则返回逻辑假(.F.)
【说明】 中可以使用通配符*和?。*可以与任何数目的字符相匹配,?可以与任何单个字符相匹配。
【例】X=“abc”
Y=“abcd”
? LIKE(X,Y),LIKE(“ab*”,X),LIKE(“a*”,Y),LIKE(“?b”,X)
.F. .T. .T. .F.
全国职称计算机考试速成过关系列套装:W .. 定价:¥133 优惠价:¥133.0 更多书籍 | |
全国职称计算机考试速成过关系列套装:W .. 定价:¥124 优惠价:¥124.0 更多书籍 |