您的当前位置:首页正文

VFP表达式、函数的使用1

2024-06-27 来源:步旅网
《计算机应用基础》期末考试准考证号: 11216101110+学号后4位 上机内容:

第一部分:函数 一、 数学函数 1、 INT( ) 功能:取整。

例如:?INT(3.4) 3 2、„„

第二部分:

VFP表达式、函数和命令的使用

一、实验目的

1、掌握VFP各类型数据的运算符和表达式,能正确由数学表达式转换为VFP表达式;

2、掌握常用VFP函数的功能和使用方法;

3、知道VFP命令的一般使用格式,掌握命令的书写规则,了解命令各子句的正确书写格式;

二、实验操作内容与步骤 1、VFP运算符

VFP中运算符分为数值运算符、字符运算符、日期运算符、逻辑运算符和关系运算符,数值运算符以数值数据为操作对象且最终运算结果也是数值数据;字符运算符以字符数据为操作对象而其运算结果可以是字符数据,也可以是逻辑数据;日期运算符以日期数据作为操作对象,运算结果可以是日期数据,也可以是数值数据;逻辑运算符以逻辑数据为操作对象,且其运算结果最终也是逻辑数据;关系运算符以数值、字符、日期、货币等为操作对象,运算最终结果只能是逻辑数据。

数值运算符有:(),^或**,*,,/,+,-,%

字符运算符有:+,-, 日期运算符有:+,-

关系运算符有:<,>,<=,>=,<>或#,=,==,$ 逻辑运算符有: .NOT.或!,.AND.,.OR.

2、VFP表达式 (1)数值表达式

?2004/4-99^0.5+30%2 491.05 a=5 b=4 c=3

n=(a+b+c)/2

?”S=”,(n*(n-a)*(n-b)*(n-c))^0.5 6 ?54%7 5 125.00 ?5^3

(2)字符表达式

C1=”CHINA ” &&(注意有四个空格) C2=”中国”

C3=”610041 ” &&(注意有四个空格) C4=”2004” ?C1+C2 CHINA 中国 ?C3+C4 6100412004 ?C1-C2 CHINA中国 ?C2$C1 .F. ?”0”$C3 .T.

(3)日期表达式

?DATE() D1=DATE()+20 D2={^2004-02-26} D3=DATE-10 ?D1-DATE() ?D1+30 ?D2-D1 ?D2>D1

03/25/11

20

05/14/11 -2604 .F.

(4)关系表达式

?a=b ?a>b

?a+b>=b+c ?c1>C2 ?d2.F. .T. .T. .F. .T.

(5)逻辑表达式

L1=.T. L2=.F. ?.NOT.L1 .F.

?L1.Or.L2 .T. ?1>2.AND.L1 .F.

?DATE()={^2004-02-25}.OR.L1.ANDL2 .F.

3、常用函数 (1)数值函数

①、绝对值函数——ABS()

?ABS(7-2*4),ABS(-3^4),ABS(200-45) 1 81.00 155 ②、指数函数——EXP() ?EXP(0),EXP(1),EXP(-1) 1.00 2.72 0.37 ③、取整函数——INT() ?INT(100/3),INT(1/6),INT(2**2) 33 0 4 ④、平方根函数——SQRT() ?SQRT(9),SQRT(60) 3.00 7.75

⑤、最大值和最小值函数——MAX()和MIN() ?MAX(12,30,40,90),MIN(1,0,-20,45/9) 90 1 ⑥、求余函数——MOD() ?MOD(4,2),MOD(9,2),MOD(20,-3),MOD(-3,20) 0 1 -1 17 MOD(A,B)的功能说明:

当A*B>0时,MOD(A,B)=B/|B|*MOD(|A|,|B|)

当A*B<0时,MOD(A,B)=B/|B|*(|B|-MOD(|A|,|B|)) ⑦、圆周率函数——PI() ?PI() 3.14

(2)字符函数

①、求子串位置函数——AT()、ATC()、AT-C()和ATCC() ?AT(”FOX”,”Visual FOXPro”),ATC(‘FOX’,“FoxPRO”)8 1 ?ATCC(‘技术’,“发展高新技术产业”) 5 ②、取子串函数——SUBSTR()和SUBSTRC() ?SUBS(“我是中国人”,3,4),SUBSTRC(“我是中国人”,2,2)

中国 是是

③、测试字符串长度函数——LEN()和LENC() ?LEN(“中国人民”),LENC(“中国人民”) 8 4 ④、英文字母大小写转换函数——LOWER()和UPPER() ?LOWER(“ABCdFG”),UPPER(“dir foxpro”) abcdefg DIR FOXPRO

(3)日期时间函数——DATE()、YEAR()、MONTH()和DAY() (4)转换函数

①、ASCII码值与字符转换函数——ASC()和CHR() ?ASC“A”),ASC“a“) A a ?CHR(65),CHR(97) 65 97

②、日期形式字符数据与日期数据的转换——CTOD()和DTOC() ?CTOD(“03-08-04“)+10,”今天是“+DTOC(DATE()) 03/18/04 今天是03/25/11

③、数值与字符数据的转换函数——STR()和VAL() ?STR(12345),VAL(“12345“) 12345 12345.00

?DATE(),YEAR(DATE()),MONTH(DATE()),DAY(DATE())03/25/11 2011 3 25

4、VFP命令的使用方法

(1)、命令名称必须位于命令行的开始位置,其余子句间的位置 可以任意,子句间用空格分隔,关键词和命令可以缩写为前四字母组成,大小写等效;

(2)、命令中的标点符号必须是英文半角状态下的标点符号; (3)、屏幕行输入不完命令行可以断行于下一行输入,但上行行尾必须使用分号“;“。

5、课后练习

1. 假设:姓名=\"李丽\",性别=\"女\",年龄=30,婚否=.T.,职称=\"工程师\",基本工资=680。

计算下列表达式的值

(1)婚否.and.性别=\"女\"

(2).not.婚否.or.性别=\"男\" (3)年龄<=40.and.性别=\"女\"

(4)(年龄>30.or.基本工资>300).and.职称=\"教授\"

(5)年龄<30.or.基本工资>300.and..not.职称=\"技术员\"

2. 已知: 姓名=\"张广\", 性别=\"男\", 出生日期={^1969/08/14},政治面貌=\"党员\", 婚否=.T.,

工作日期={^1991/09/15},职称=\"讲师\",基本工资=780。按下列要求写出表达式,并计算

出表达式的值。

(1)黄姓职工或职称为讲师的男性职工;

(2)政治面貌为党员,年龄小于 30,职称为教授或高级工程师; (3)已婚的女同志;

(4)1990 年以前参加工作的讲师;

(5)基本工资大于 600 元且工龄大于 10 年。

3. 假设圆的半径 R=10.5,试写出计算圆的面积和体积的表达式,并求出其值。

二、 数学函数 1.INT( ) 功能:取整。

例如:?INT(5.9) 5 2.ROUND( )

功能:四舍五入

例如:?ROUND ( 20.23545) 20.24 3.MOD( ) 功能:取模函数

例如:?MOD( -56,9) 7 4.MAX/MIN( )

功能:最大值最小值函数

例如:?MAX(5,5.6,7.8,8 ) 8 ?min(5,3.4,6,8 ) 3.4 5.ABS ( )

功能:绝对值函数

例如:?ABS(-1.25 ) 1.25 6.SQRT( )

功能:平方根函数

例如:?SQRT( 88) 9.38 7.EXP( ) 功能:指数函数

例如:?EXP(4 ) 54.60 3.RAND( )

功能:随机函数

例如:?RAND(-1 ) 0.99 二字符处理函数 1. ALLTRIM( )

功能:取消前后空格函数

例如:?ALLTRIM (\" 微风 \") 微风 2.LTRIM( )

功能:删除字符串前导空格函数

例如:?“伤”+LTRIM(“ 不起”) 3.TRIM/RTRIM ( )

功能:删除字符串尾部空格函数 例如:STORE“床前 ”TO Z ?TRIM(Z)+“明月光”

伤不起 床前明月光

4.LEFT( ) 功能:取左子串函数

例如:?LEFT(“QWEERT”,5) QWEER 5.RIGHT( )

功能:取右子串函数

例如:? RIGHT(“QWEERT”,2) RT 6.SUBSTR( )

功能:取子串函数

例如:X=“01/01/12”

?SUBSTR(X,7,2) 12 7.LEN( )

功能:字符串长度函数

例如:?LEN(“How are you?”) 12 8.SPACE( ) 功能:空格函数

例如:?“浙江”+SPACE(2+2)+“万里学院” 浙江 万里学院 9.STUFF( )

功能:字符串替换函数 例如:?STUFF(“只如初见时”,7,0,“人生”) 人生只如初见时 三、日期时间函数 1.TIME ( )

功能:系统时间函数

例如: ?TIME() 09:27:34 2.DATE( ) 功能:日期函数

例如:?DATE() 12/20/11 3.DATETIME( ) 功能:日期时间函数

例如:?DATETIME() 12/20/11 07:12:01 PM 4.YEAR( )

功能:求年份函数

例如:?YEAR(DATETIME()) 2011 5.MONTH/CMONTH( ) 功能:求月份函数

例如:?MONTH(DATETIME()) 12 ?CMONTH(DATETIME()) December 6.DAY( )

功能:求日期函数

例如:?DAY(DATETIME()) 20 7.HOUR( ) MINUTE( )

? SEC(DATETIME()) 29 功能:求时、分、秒函数

例如:?HOUR(DATETIME()) 19 ? MINUTE(DATETIME()) 21 ? SEC() 四.转换函数 1.UPPER( )

功能:字母小写转大写函数

例如:?UPPER(“Ningcheng”) NINGCHENG 2.LOWER( )

功能:字母大写转小写函数

例如:?LOWER(“xuegai”) XUEGAI 3.CTOD( )

功能:字符型转日期型函数

例如:?CTOD(\"11/11/111\") 11/11/11 4.DTOC( )

功能:日期型转字符型函数

例如:?DTOC(DATE()) 12/20/11 5.ASC( )

功能:字符型转ASCII码函数 例如:?ASC(\"YOU\") 89 6.CHR( )

功能:ASCII码转字符函数 例如:?CHR(86) V 7.STR( )

功能:数值型转字符型函数

例如:?STR(895.223,6,2) 895.22 8.VAL( )

功能:字符转换数值函数

例如:?VAL(“89QQ.123”) 89.00

因篇幅问题不能全部显示,请点此查看更多更全内容