第八件 第四章(3) 函数及 程序控制 结构
函数及 程序控制 结构 第八讲 第四章(3)
上讲内容回顾 血常用的输入、输出命令; L Foxpro中对数据表记录的基本操作命令 L Foxpro中对环境的基本设置命令; 卫用于程序控制的基本命令 其中常用的输入、输出命令和数据表记 录的基本操作命令是本讲的重点
常用的输入、输出命令; Foxpro 中对数据表记录的基本操作命令; Foxpro 中对环境的基本设置命令; 用于程序控制的基本命令 其中常用的输入、输出命令和数据表记 录的基本操作命令是本讲的重点
本讲内容 常用函数 m程序的选择结构 程序的循环结构 m程序结构的嵌套 m过程 m自定义函数
常用函数 程序的选择结构 程序的循环结构 程序结构的嵌套 过程 自定义函数
常用函数 日期函数DATE( 用途:返回当前的系统日期,默认格式为mmd/y 例如:?DATE()运行结果为:2/20/01 年函数YEAR() 格式:YEAR() 用途:返回中的年的数据 ?“昆明”$“昆明理工大学”结果为:T ?”昆明”$“云南” 结果为:F 、$操作符 格式:$ 用途:检测字符串的包含关系,若包含 在字符表达式2中,则返回“真”,否则返回“假”。 例如
日期函数DATE( ) 用途:返回当前的系统日期,默认格式为mm/dd/yy。 例如:?DATE( ) 运行结果为: 年函数YEAR( ) 格式:YEAR() 用途:返回中的年的数据 FOXPRO还具有求月和求日的函数,分别是:MONTH( ) 和DAY( )函数,用法及格式同上。 字符串操作函数 一、$操作符 格式:$ 用途:检测字符串的包含关系,若包含 在字符表达式2中,则返回“真”,否则返回“假”。 例如 ?“昆明” $ “昆明理工大学 ” 结果为:.T. ?”昆明” $ “云南” 结果为:.F
常用函数 宏替换函数& 格式:&) 用途:生成个数为所指定的空格
二、宏替换函数& 格式:& 用途:把字符型变量的值替换出来,就是以字符型内存变量 的值作为函数的值。 注意:在&与内存变量之间不能有空格;该函数可以作为字符串的 一部分出现,但引用结尾一定要写“ .”,用来和普通字符区分; 宏替换函数还可以相互嵌套。 三、字符串长度测试函数LEN( ) 格式:LEN() 用途:测算字符串的长度。 如:?LEN(“昆明理工大学计算中心”) 四、空格生成函数SPACE( ) 格式:SPACE() 用途:生成个数为所指定的空格
常用函数 五、删除字符串右边的空格函数 RTRIM(/TRIM() 格式:RTRⅠM()TRIM() 六、压缩空格函数 ALLTRIM( 格式: ALLTRIM(前后的空格符都删掉,但不能删除掉字符 表达式中间的空格。 七、字符串搜索定位函数AT() 格式:AT(字符表达式2>) 用途:在中搜索首次出现的,如果找 到,函数返回的第一个字符在中的 位置。若没找到,则返回0 八、字符串查找替代函数 CHRTRAN( 格式: CHRTRAN(,字符表达式2>,字符表达 式3>) 用途:在中,将与相匹配的 字符替换成中相应的字符
五、删除字符串右边的空格函数RTRIM( )/TRIM( ) 格式:RTRIM( )/TRIM() 六、压缩空格函数ALLTRIM( ) 格式:ALLTRIM() 用途:把前后的空格符都删掉,但不能删除掉字符 表达式中间的空格。 七、字符串搜索定位函数 AT( ) 格式:AT(,) 用途:在中搜索首次出现的,如果找 到,函数返回的第一个字符在中的 位置。若没找到,则返回0 八、字符串查找替代函数CHRTRAN( ) 格式:CHRTRAN(,,) 用途:在中,将与相匹配的 字符替换成中相应的字符
常用函数 九、左字串截取函数LEFT() 格式:LEFT(n) 用途:从左边开始截取n个字符。若n大于的长度,返回整个;若n,n) 用途:同上,只是截取方向不同 命令 回区 格式:? SUBSTR(黄码一去不复返5,10) 用途: m个字符。 例如: 运行结果为:一去不复
九、左字串截取函数LEFT( ) 格式:LEFT(,n) 用途:从左边开始截取n个字符。若n大于的长度,返回整个;若n,n) 用途:同上,只是截取方向不同。 十一、任意字串截取函数 SUBSTR( ) 格式:SUBSTR(,n ,m) 用途:从的第n个字符开始,连续截取m个字符。 例如: 运行结果为:
常用函数 转换函数 (1)字符转换数值函数VAL() 格式:VAL( 用途:将数字格式的字符转换成数值数据。 例如: 口区 ?VAL(1975") 运行结果为:197500 2)数值转换字符函数STR( 格式:STR([ 用途:将数值型数据转换成字符型数据,如果遇到小数点则可指 定要转换的小数位数。当未指定返回的总长度时,其默认 不保留小数位,且总长度为10个字符,未满10个字符则在 前面补满空白
(1)字符转换数值函数VAL( ) 格式:VAL() 用途:将数字格式的字符转换成数值数据。 (2)数值转换字符函数STR( ) 格式:STR([,][,]) 用途:将数值型数据转换成字符型数据,如果遇到小数点则可指 定要转换的小数位数。当未指定返回的总长度时,其默认 不保留小数位,且总长度为10个字符,未满10个字符则在 前面补满空白
常用函数 转换函数 三、字符转换日期函数CTOD() 格式:CTOD() 用途:将字符型的日期格式数据转换成日期型的数据,默认格式 为mm/dy。 例如:四你 ?cTn(“01/03/99")-2 结果为:1/01/99 用来转换日期型 四、日期转换字符函数DTOC() 数据的格式。 格式:DTOC([<1 用途:将日期型的数据转换成字符数据 例如 命令 口区 ?“今天是"+T0ATEO,1 结果为:今天是2001022
三、字符转换日期函数 CTOD( ) 格式:CTOD() 用途:将字符型的日期格式数据转换成日期型的数据,默认格式 为mm/dd/yy。 四、日期转换字符函数 DTOC( ) 格式:DTOC([,]) 用途:将日期型的数据转换成字符数据。 用来转换日期型 数据的格式
常用函数 测试函数 、记录测试函数 RECORD() 格式: RECORD([表别名工作区 用途:测定工作区数据表文件的记录个数。若未指定表别名或工作 区,则返回当前工作区的数据表文件记录个数。 查找成功测试函数 FOUNT() 格式: FOUND([工作区] 用途:当用查找命令查找记录时,此函数可以判断这个记录是否被 找到。当符合条件的记录被找到时,此函数返回逻辑真值T 否则返回F。 例如 程序1.pxg 口区 UsE学生档 index on姓名to姓名 15e 学生档案 index姓名 sEEK“李航 工 F FOURID〔 ?“查到该生 ELSE ?“查无此人 ED工F USE 运行结果为:查无此人
一、记录测试函数 RECORD( ) 格式:RECORD([表别名|工作区]) 用途:测定工作区数据表文件的记录个数。若未指定表别名或工作 区,则返回当前工作区的数据表文件记录个数。 二、查找成功测试函数FOUNT( ) 格式:FOUND([工作区]) 用途:当用查找命令查找记录时,此函数可以判断这个记录是否被 找到。当符合条件的记录被找到时,此函数返回逻辑真值.T. 否则返回.F.。 运行结果为: