《VF程序设计基础》PPT课件.ppt_第1页
《VF程序设计基础》PPT课件.ppt_第2页
《VF程序设计基础》PPT课件.ppt_第3页
《VF程序设计基础》PPT课件.ppt_第4页
《VF程序设计基础》PPT课件.ppt_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章VisualFoxPro程序设计基础,程序设计基础,常量与变量,表达式,1、常量,数值型货币型:前置的$字符型:定界符有3种:单撇号、双撇号和方括号日期型:一对花括号日期时间型逻辑型:只有“真”和“假”,字段变量内存变量,简单内存变量,数组,内存变量常用命令:赋值、显示、清除,类型,2、变量,数值表达式字符表达式日期和时间表达式:6种格式运算关系表达式逻辑表达式,函数,2.3常用函数为了增强系统的功能和方便用户使用,VFP提供了很多内部函数,每个函数实现某项功能或完成某种运算。函数调用形式函数名(参数表),常用函数类型,数值运算函数字符处理函数日期时间函数测试函数数据类型转换函数,2.3.1数值运算函数1.求绝对值函数格式:ABS()SIGN()功能:ABS()求数值型表达式的绝对值SIGN()返回数值表达式的符号,结果为正、负和零时,函数值为1、-1、0,例:store10tox?ABS(5-x),ABS(x-5),SIGN(5-X),SIGN(x-5)结果:55-11,例:store100tox?SQRT(x)结果:10,2.求平方根函数格式:SQRT()功能:求数值型表达式的算术平方根注:数值型表达式不能为负数,3.函数格式:PI()功能:返回圆周率的近似值,4.求整函数格式:INT()功能:INT()返回数值型表达式的整数部分,例:x=123.72?INT(x)结果:123,例:?ROUND(3.1415*3,2),ROUND(156.78,-1)结果:9.42160,5.四舍五入函数格式:ROUND(,)功能:对求值,并保留位小数若数值表达式2大于等于0,表示要保留的小数位数;若数值表达式2小于0,则的整数部分从小数点向左的第N位四舍五入。,6.求余函数格式:MOD,功能:求除以的余数余数的正负和除数相同;如果被除数和除数同号,函数值为两数相除的余数;异号则为相除的余数再加上除数的值。,例:?MOD(25,7),MOD(25,-7),MOD(-25,7),MOD(-25,-7)结果:4-33-4,2.3.2字符处理函数1.求字符串长度函数格式:LEN(字符型表达式)功能:求字符串的长度,即所包含的字符个数。若是空串,则长度为0。函数值为数值型。,例:x=中文VisualFoxPro6.0?len(x),2.大小写字母转函数,格式:LOWER()UPPER()功能:LOWER将字符串中的大写字母转换成小写。UPPER将字符串中的小写字母转换成大写。例:yn=y?UPPER(yn),LOWER(YES)输出的函数值为:Y、yes。,3.空格字符串生成函数,格式:SPACE()功能:生成若干个空格,空格的个数由数值型表达式的值决定。例:name=SPACE(8)?LEN(name)输出的函数值为8。,例:命令?LEN(SPACE(3)-SPACE(2)的结果是().A1B2C3D5,5,4.删除字符串前后空格函数格式:LTRIM()TRIM()ALLTRIM()功能:LTRIM删除字符串的前导空格。TRIM删除字符串的尾部空格。ALLTRIM删除字符串中的前导和尾部空格。ALLTRIM函数兼有LTRIM和TRIM函数的功能。,S1=“test?trim(s1),LTRIM(s1),AllTRIM(s1)?len(s1),len(trim(s1),len(LTRIM(s1),len(AllTRIM(s1),5.取子串函数格式:LEFT(,)RIGHT(字符型表达式,SUBSTR(,功能:LEFT函数从字符型表达式左边取一个指定长度的子串作为函数值;RIGHT函数从字符型表达式右边取一个指定长度的子串作为函数值;SUBSTR函数从指定表达式值的指定起始位置取指定长度的子串作为函数值。若缺省第三个自变量,则函数从指定位置一直取到最后一个字符。,例1:storegoodbye!tox?left(x,2)?substr(x,6,2)?substr(x,6,2)+substr(x,6)?right(x,3)例2:xm=李小四?SUBSTR(xm,1,2),LEFT(xm,2),6.求子串位置函数格式:AT(,数值表达式)功能:若的值存在于的值中,则给出在中的开始位置,若不存在,则函数值为0。函数值为数值型。表示要在值中搜索的第几次出现,默认为。区别:AT函数区分字母大小写,例:x=ThisisVisualFoxPro6.0“?AT(fox,x),AT(is,x,3),例:AT(”EN”,RIGHT(“STUDENT”,4)的执行结果是_,2,7.字符串替换函数,格式:STUFF(,)功能:用去替换中由起始位置开始所指定的若干个字符。如果字符型表达式2的值是空串,则字符型表达式1中由起始位置开始所指定的若干个字符被删除。如果为0,则相当于在中由指定的字符前面插入。,例:STORE中国长沙TOx?STUFF(x,6,4,北京)输出为:中国北京。,例:下列程序段执行后,内存变量s1的值是:s1=networks1=stuff(s1,4,4,BIOS)AnetworkBnetBIOSCnetDBIOS,2.3.3日期时间函数1.系统日期和时间函数格式:DATE()TIME()DATETIME()功能:返回当前系统的日期、时间和日期时间例:?DATE(),TIME(),DATETIME(),2.年份、月份和天数函数格式:YEAR()MONTH()DAY()功能:求给定日期的年份、月份、和天数,结果为数值型,例:d=2005-08-16?YEAR(d),month(d),day(d)结果:2005816,3.时、分和秒函数格式:HOUR()MINUTE()SEC()功能:返回给定时间的时(24小时制)、分、秒,结果为数值型,例:d=2005-08-16,5:43:56p?HOUR(d),minute(d),sec(d)结果:174356,2.3.4测试函数1.值域测试函数格式:BETWEEN(,)功能:判断表达式的值是否介于相同数据类型的两个表达式值之间。BETWEEN()首先计算表达式的值。如果一个字符、数值、日期、表达式的值介于两个相同类型表达式的值之间,即被测表达式的值大于或等于下限表达式的值,小于或者等于上限表达式的值,BETWEEN()将返回一个真.T.值,否则返回.F.。,例:gz=375?BETWEEN(gz,260,650)输出为.T.。,2、数据类型测试函数格式:VARTYPE(,)功能:测试表达式的数据类型,返回用字母代表的数据类型。函数值为字符型。未定义或错误的表达式返回字母U。若表达式是一个数组,则根据第一个数组元素的类型返回字符串。,若表达式的运算结果是NULL值,则根据函数中逻辑表达式的值决定是否返回表达式的类型。具体规则是:如果逻辑表达式为.T.,则返回表达式的原数据类型。如果逻辑表达式为.F.或省略,则返回X,表明表达式的运算结果是NULL值。,例:a=DATE()a=NULL?VARTYPE(3.46),VARTYPE($385),VARTYPE(FoxPro),VARTYPE(a,.T.),VARTYPE(a)输出为:NYCDX。,例:设X=65,命令?VARTYPE(X)的输出是()。ANBCCLD出错,C,3、条件函数IIF,格式:IIF(,)功能:若逻辑型表达式的值为.T.,函数值为的值,否则为的值。例:xb=女?IIF(xb=男,1,IIF(xb=女,2,3)输出为2。,2.3.5数据类型转换函数1.将数值转换成字符串函数格式:STR(,)功能:将的值转换成字符串。由决定转换后字符串的总长度(=整数部分+小数位+小数点),由决定转换后小数部分的字符个数。函数返回值为字符型。若小于值的整数位数,则函数值为“*”组成的字符串;若省略,则默认小数位数为0;全省则整数位数默认为10。,x=1234.587?STR(x,10,2),STR(x,10,4),STR(x,7,2),STR(x,7),STR(x,3),STR(x)输出为:其中的代表空格。1234.591234.58701234.591235*1235,2.将字符串转换成数值函数格式:VAL()功能:将由数字、正负号、小数点组成的字符串转换为数值(保留两位小数),转换遇上非上述字符停止。若串的第一个字符即非上述字符,函数值为0。前导空格不影响转换。,?VAl(14.365),val(APPLE567),val(12.56APPLE34)结果:14.370.0012.56,3.将日期型转换成字符串函数格式:DTOC(,)功能:将的值转换为字符型,若无选项,则字符串的格式为月/日/年,否则,转换的格式为yyyymmdd格式。,?今天的日期是:+DTOC(DATE(),1)结果:今天的日期是20100318,4.将字符串转换成日期型格式:CTOD()功能:CTOD函数将指定的字符串转换成日期型数据,字符型表达式中

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论