第五讲 函数
函数是用程序来实现的一种数据运算或转换。每一个函数都有特定的数据运算或转换功能,它往往需要若干个自变量,即运算对象,但只能有一个运算结果,称为函数值或返回值。
函数调用的格式为:函数名(自变量)
函数调用可以出现在表达式里,表达式将函数的返回值作为自己运算的对象。函数调用也可作为一条命令使用,但此时系统忽略函数据的返回值。
常用函数的使用
1. 数值函数
2. 字符串函数
3. 日期和时间函数
4. 数据类型转换函数
5. 测试函数
VFP 提供了非常丰富的函数,在此仅举了一些常用函数的例子,希望同学们在今后的深入学习中逐渐体会各种函数的功能。
相关题型
1.下列字符型常量的表示中,错误的是
A )’65+13’ B )[“电脑商情”]
C )[[中国]] D )`[x=y]`
3.下列关于变量的叙述中,不正确的一项是
A )变量值可以随时改变
B )在Visual FoxPro中,变量可为字段变量和内存变量
C )变量的类型决定变量值的类型
D )在Visual FoxPro中,可以将不同类型的数据赋给同一个变量
4.表达式LEN (SPACE (5)—SPACE (10))的结果为[ 15 ]
5.若内存变量名与当前的数据表中的一个字段“student ”同名,则执行命
令?student 后显示的是
A )字段变量的值 B )内存变量的值
C )随机显示 D )错误信息
6.下列日期表达式错误的是
A ){^2004/03/09}+15 B ){^2004/02/25}+date()
C ){^2004/03/09}-15 D ){004/02/25^}-date()
8.下列各字符函数中,函数返回值不是数值型的是
A )LEN (“2003/04/15”)
B )SUBSTR (“计算机俗称电脑”,11,4)
C )AT (“Fox ”,“Visual FoxPro”)
D )LIKE (“a*”,“abcd ”)
9.在下列各项中,运算级别最低的为
A )算术运算符 B )关系运算符
C )逻辑运算符 D )圆括号()
10.下列字段名中,合法的是
A )_学生姓名 B )学生□姓名
C )学生_姓名 D )学生. 姓名
12.打开数据库abc 的正确命令是
A )OPEN DATABSE abc B )USE abc
C )USE DATABASE abc D )OPEN abc
13.在Visual FoxPro中,恢复逻辑删除记录的命令是
A )DELETE
B ) RECALL
C ) PACK
D ) ZAP
15.设X=6〈5,命令?VARTYPE (X )的输出是
A )N B)C C)L D)出错
16.命令?vartype (time ())结果是
a )c b )d c )t d )出错
17.命令?len (space (3)-space (2))的结果是
a )1 b )2 c )3 d )5
18.想要将日期型或日期时间型数据中的年份用4位数字显示,应当使用设置命令
a )set century on b )set century off
c )set century to 4 d )set century of
习题五
一、 选择题
1. 在VFP 中,有下面几个内存变量赋值语句:
X={^2001-07-28} 10:15:20 PM}
Y=.T.
M=$123.45
N=123.45
Z=”123.45”
执行上述赋值语句之后, 内存变量X 、Y 、M 、N 和Z 的数据类型分别是
A )D 、L 、Y 、N 、C B )D 、L 、M 、N 、C
C )T 、L 、M 、N 、C D )T 、L 、Y 、N 、C
2.以下日期值正确的是
A ){“2001-05-25”} B ){^2001-05-25}
C ){2001-05-25} D ){[2001-05-25]}
3.在下面的VFP 表达式中,不正确的是
A ){^2001-05-01 10:10:10 AM}-10 B ){^2001-05-01}—DATE ()
C ){^2001-05-01}+DATE() D )[^2001-05-01]+[1000]
4.在下面的VFP 表达式中,运算结果是逻辑真的是
A )EMPTY (.NULL. ) B)LIKE(“acd ”, ”ac? ”)
C)AT(“a ”, ”123abc ”) D)EMPTY(SPACE(2))
5. 设D=CTOD(“04-14-89”) ,命令?V ARTYPE (D )的输出值是
A )L B )D C )N D )C
6.在下列函数中,函数值为数值的是
A )BOF () D )SUBSTR (DTOC (DATE ()),7)
C )AT (“人民”,“中华人民共和国”) B )CTOD (“01/01/96”)
7.设N=886,M=345,K=“M+N”,表达式1+&K的值是
A )1232 B )数据类型不匹配 C )1+M+N D )346
8.表达式V AL (SUBS (“奔腾586”,5,1))*LEN(“Visual FoxPro”)的结果是
A )63.00 B )64.00 C )65.00 D )60.00
9.连续执行以下命令之后,最后一条命令的输出结果是
SET EXACT OFF
X=“A □”
?IIF (X =“A ”,X-“BCD ”,X+“BCD ”)
A )A B )BCD C )ABCD □ D )A □BCD
二、 填空题
1.命令?ROUND (337.2007,3)的执行结果是
2.命令?LEN (“THIS IS MY BOOK”)的结果是
3.TIME ()返回值的数据类型是。
4.顺序执行下列操作后,屏幕最后显示的结果是和 Y=DATE()
H= DTOC(Y )
?V ARTYPE (Y ),V ARTYPE (H )
三、 上机题
1. B=DTOC(DATE (),1)
?”今天是:”+LEFT(B,4)+”年”;
+IIF(SUBSTR(B,5,1)=”0”,SUBSTR(B,6,1),;
SUBS(B,5,2))+”月”+RIGHT(B,2)+”日”
2. DD=DATE()
?STR(YEAR(DD),4)+”年”+STR(MONTH(DD),2)+”月”+STR(DAY(DD),2)+”日”
3. X=STR(12.4,4,1)
Y=RIGHT(X,3)
Z=”&y”+”&x”
?Z,&Z
4. X=”奔腾586”
Y=”个人计算机”
?LEN(X),RIGHT(X,3)+Y
? ”&X. &Y”,X+Y
5. ?AT(“人民”, ”中华人民共和国”) ?VAL(SUBST(“668899”,5,2))+1 ?SUBSTR(‘668899’,3)+”I ”
6. 说出下列表达式的值
(1)35%2**3
(2)STUFF (“GOODBOY ”,5,3,“GIRL ”)
(3)LEN (TIME ()+“4”)
(4)YEAR (DATE ())+1
(5)AT (“IS ”,“THIS IS A BOOK”)
(6)LIKE (“EDIT ”,“EDI ?”)
第五讲 函数
函数是用程序来实现的一种数据运算或转换。每一个函数都有特定的数据运算或转换功能,它往往需要若干个自变量,即运算对象,但只能有一个运算结果,称为函数值或返回值。
函数调用的格式为:函数名(自变量)
函数调用可以出现在表达式里,表达式将函数的返回值作为自己运算的对象。函数调用也可作为一条命令使用,但此时系统忽略函数据的返回值。
常用函数的使用
1. 数值函数
2. 字符串函数
3. 日期和时间函数
4. 数据类型转换函数
5. 测试函数
VFP 提供了非常丰富的函数,在此仅举了一些常用函数的例子,希望同学们在今后的深入学习中逐渐体会各种函数的功能。
相关题型
1.下列字符型常量的表示中,错误的是
A )’65+13’ B )[“电脑商情”]
C )[[中国]] D )`[x=y]`
3.下列关于变量的叙述中,不正确的一项是
A )变量值可以随时改变
B )在Visual FoxPro中,变量可为字段变量和内存变量
C )变量的类型决定变量值的类型
D )在Visual FoxPro中,可以将不同类型的数据赋给同一个变量
4.表达式LEN (SPACE (5)—SPACE (10))的结果为[ 15 ]
5.若内存变量名与当前的数据表中的一个字段“student ”同名,则执行命
令?student 后显示的是
A )字段变量的值 B )内存变量的值
C )随机显示 D )错误信息
6.下列日期表达式错误的是
A ){^2004/03/09}+15 B ){^2004/02/25}+date()
C ){^2004/03/09}-15 D ){004/02/25^}-date()
8.下列各字符函数中,函数返回值不是数值型的是
A )LEN (“2003/04/15”)
B )SUBSTR (“计算机俗称电脑”,11,4)
C )AT (“Fox ”,“Visual FoxPro”)
D )LIKE (“a*”,“abcd ”)
9.在下列各项中,运算级别最低的为
A )算术运算符 B )关系运算符
C )逻辑运算符 D )圆括号()
10.下列字段名中,合法的是
A )_学生姓名 B )学生□姓名
C )学生_姓名 D )学生. 姓名
12.打开数据库abc 的正确命令是
A )OPEN DATABSE abc B )USE abc
C )USE DATABASE abc D )OPEN abc
13.在Visual FoxPro中,恢复逻辑删除记录的命令是
A )DELETE
B ) RECALL
C ) PACK
D ) ZAP
15.设X=6〈5,命令?VARTYPE (X )的输出是
A )N B)C C)L D)出错
16.命令?vartype (time ())结果是
a )c b )d c )t d )出错
17.命令?len (space (3)-space (2))的结果是
a )1 b )2 c )3 d )5
18.想要将日期型或日期时间型数据中的年份用4位数字显示,应当使用设置命令
a )set century on b )set century off
c )set century to 4 d )set century of
习题五
一、 选择题
1. 在VFP 中,有下面几个内存变量赋值语句:
X={^2001-07-28} 10:15:20 PM}
Y=.T.
M=$123.45
N=123.45
Z=”123.45”
执行上述赋值语句之后, 内存变量X 、Y 、M 、N 和Z 的数据类型分别是
A )D 、L 、Y 、N 、C B )D 、L 、M 、N 、C
C )T 、L 、M 、N 、C D )T 、L 、Y 、N 、C
2.以下日期值正确的是
A ){“2001-05-25”} B ){^2001-05-25}
C ){2001-05-25} D ){[2001-05-25]}
3.在下面的VFP 表达式中,不正确的是
A ){^2001-05-01 10:10:10 AM}-10 B ){^2001-05-01}—DATE ()
C ){^2001-05-01}+DATE() D )[^2001-05-01]+[1000]
4.在下面的VFP 表达式中,运算结果是逻辑真的是
A )EMPTY (.NULL. ) B)LIKE(“acd ”, ”ac? ”)
C)AT(“a ”, ”123abc ”) D)EMPTY(SPACE(2))
5. 设D=CTOD(“04-14-89”) ,命令?V ARTYPE (D )的输出值是
A )L B )D C )N D )C
6.在下列函数中,函数值为数值的是
A )BOF () D )SUBSTR (DTOC (DATE ()),7)
C )AT (“人民”,“中华人民共和国”) B )CTOD (“01/01/96”)
7.设N=886,M=345,K=“M+N”,表达式1+&K的值是
A )1232 B )数据类型不匹配 C )1+M+N D )346
8.表达式V AL (SUBS (“奔腾586”,5,1))*LEN(“Visual FoxPro”)的结果是
A )63.00 B )64.00 C )65.00 D )60.00
9.连续执行以下命令之后,最后一条命令的输出结果是
SET EXACT OFF
X=“A □”
?IIF (X =“A ”,X-“BCD ”,X+“BCD ”)
A )A B )BCD C )ABCD □ D )A □BCD
二、 填空题
1.命令?ROUND (337.2007,3)的执行结果是
2.命令?LEN (“THIS IS MY BOOK”)的结果是
3.TIME ()返回值的数据类型是。
4.顺序执行下列操作后,屏幕最后显示的结果是和 Y=DATE()
H= DTOC(Y )
?V ARTYPE (Y ),V ARTYPE (H )
三、 上机题
1. B=DTOC(DATE (),1)
?”今天是:”+LEFT(B,4)+”年”;
+IIF(SUBSTR(B,5,1)=”0”,SUBSTR(B,6,1),;
SUBS(B,5,2))+”月”+RIGHT(B,2)+”日”
2. DD=DATE()
?STR(YEAR(DD),4)+”年”+STR(MONTH(DD),2)+”月”+STR(DAY(DD),2)+”日”
3. X=STR(12.4,4,1)
Y=RIGHT(X,3)
Z=”&y”+”&x”
?Z,&Z
4. X=”奔腾586”
Y=”个人计算机”
?LEN(X),RIGHT(X,3)+Y
? ”&X. &Y”,X+Y
5. ?AT(“人民”, ”中华人民共和国”) ?VAL(SUBST(“668899”,5,2))+1 ?SUBSTR(‘668899’,3)+”I ”
6. 说出下列表达式的值
(1)35%2**3
(2)STUFF (“GOODBOY ”,5,3,“GIRL ”)
(3)LEN (TIME ()+“4”)
(4)YEAR (DATE ())+1
(5)AT (“IS ”,“THIS IS A BOOK”)
(6)LIKE (“EDIT ”,“EDI ?”)