第2章VisualFoxPro程序的设计基础
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
43.29
第2章 Visual FoxPro程序设计基础
3.四舍五入函数ROUND() 【格式】 ROUND(〈数值表达式〉,〈有效位数〉) 【功能】 对〈数值表达式〉的值按指定的〈有效位 数〉进行四舍五入。 【例3】 ? R0UND(3.14159,4), ROUND(1234.9962,0), ROUND(1234.567,-1)
第2章 Visual FoxPro程序设计基础
2.3.2 字符处理函数
1.取子串函数SUBSTR() 【格式】 SUBSTR(〈字符串表达式〉,〈起始位置〉 [, 〈长度〉]) 【功能】 从〈字符串表达式〉中的〈起始位置〉截取子字 符串,〈长度〉为所截取的子串的长度。 【例 1】store ”ABCDEFG” to CN ? SUBSTR(CN,4,2),SUBS(CN,1,4),SUBS(CN,6,3)
2. 字符型常量
由一串字符组成的字符串,用“”(双引号)、‘’ (单引号)、[] (方括号)括起来。 举例: ’副教授’、”boy”、 [数据库系统]是合法 常量,而””I am a boy””、’It’s abest’是非法常量。 注意:最长只能为254个字符
第2章 Visual FoxPro程序设计基础
第2章 Visual FoxPro程序设计基础
2.2 数据存储
2.2.1 常量
常量:在程序的运行过程中不改变其值的量 常量的种类:
数值型常量 字符型常量 逻辑型常量 日期型常量 货币型常量
第2章 Visual FoxPro程序设计基础
1.数值型常量
用整数、小数、科学计数法表示的数 举例:85,-56.2, 1.256E3, 3.8E-2 等
【功能】 返回〈字符串表达式〉中所包含的字符个数,即字符串长 度。
【例 2】 ? LEN(”Visual FoxPro6.0”)
16
3.搜索子串位置函数AT()
【格式】 AT(〈字符串1〉,〈字符串2〉[,<数值表达式>])
【功能】 寻找〈字符串1〉在〈字符串2〉中首次出现的起始位置。 若〈字符串2〉中不包含〈字符串1〉,则返回值为零。若有“数值 表达式”(假设数值表达式为K),则寻找〈字符串1〉在〈字符串2〉 中第K次出现的位置。
格式:DIMENSION |DECLARE <数组名> (<下标1>) [,(<下标2>)] [<数组名> (<下标1>) [,(<下标2>)]]…
例如:dimension sz(10)
declear a(3) , b(2,3)
数组的赋值
sz(1)=”ABCD” && 给SZ(1)赋值,字符型, 值:ABCD
2.3.1 数学运算函数
第2章 Visual FoxPro程序设计基础
1.平方根函数SQRT() 【格式】 SQRT(〈数值表达式〉) 【功能】 计算并返回〈数值表达式〉的算术平方根。 【例 1】 ? SQRT(5*5)
5.00
2.绝对值函数ABS() 【格式】 ABS(<数值表达式>) 【功能】 计算并返回〈数值表达式〉的绝对值。 【例 2】 ? ABS(-43.29)
off:系统默认值。日期数据显示8位,年份2位。 to [ncentury]:指定日期数据所对应的世纪值。 (2)设置日期显示格式 【格式】SET DATE [TO] AMERICAN | ANSI | BRITISH | FRENCH | GERMAN | ITLIAN | JAPAN | USA | MDY | DMY | YMD | SHORT | LONG 【功能】设置日期型和日期时间型数据的显示输出格式。系统默认为 AMERICAN美国格式。
2.1 Visual FoxPro的数据类型
2.1.1 基本数据类型
与其他程序设计语言相比,Visual FoxPro提供了更多的数据 类型。适用于变量和数组的数据类型主要6种,包括:字符 型、数值型、货币型、日期型、日期时间型和逻辑型。
2.1.2 字段数据类型
Visual FoxPro定义了13种字段类型,包括:字符型、数值 型、浮动型、双精度型、整型、货币型、日期型、日期时间 型、逻辑型、备注型、通用型、二进制字符型和二进制备注 型。
【例 3】 X=”Visual FoxPro 6.0”
? AT(”Fox”,X)
&& 显示结果为 8
? AT(”fox”,X)
&& 显示结果为 0
? AT(”o”,X)
&& 显示结果为 9
? AT(”o”,X ,2)
&& 显示结果为 13
第2章 Visual FoxPro程序设计基础
4.空格函数SPACE() 【格式】 SPACE(〈数值表达式〉) 【功能】 产生与〈数值表达式〉的值 相同的空格数。 【例 4】 ? ”学生”+SPACE(4)+”情况”
activate window calculator [例]往剪贴板中写入信息
ቤተ መጻሕፍቲ ባይዱ
_CLIPTEXT="hello!“ 查看剪贴板
第2章 Visual FoxPro程序设计基础
2.3 Visual FoxPro6.0常见函数
函数的一般格式: <函数名>(<自变量表>) 切记:函数名和小括号不能省。 函数的三要素:函数名、参数、函数值 如:ABS(-2)
第2章 Visual FoxPro程序设计基础
7.日期时间型常量的设置
(3)设置日期2000年兼容性 严格的日期格式如下 :
{^ yyyy/mm/dd [hh:mm:ss[am|pm]} 改变日期格式如下: 【格式】SET STRICTDATE TO [0│1│2] 【功能】设置日期格式。 【说明】0:关闭严格的日期格式检测,即设置日期格式按传统的日期 格式。
sz(2)=23.45 && 给SZ(2)赋值,数值型, 值:23.45
sz(3)={^2019-03-02} && 给SZ(3)赋值,日期型, 值:2019年9月2日
sz(4)={^2019-03-02 9:00am} && 给SZ(4)赋值,日期时 间型,值:2019年11月2日上午9点
sz(5)=.T. && 给SZ(5)赋值,逻辑型,值:真
DE ABCD FG 若省略〈长度〉,或者〈长度〉超过从〈起始位置〉到末 尾的长度,则截取的子字符串为从〈起始位置〉到〈字符串 表达式〉末尾的所有字符。例如: ? SUBSTR(”计算机程序设计教程”,11) 设计教程
第2章 Visual FoxPro程序设计基础
2.求字符串长度函数LEN()
【格式】 LEN〈字符串表达式〉
数组是具有相同名字、不同下标值的一组变量。数组中的每 个数据值称为数组元素,每个数组元素在数组中的位置是固定 的,可以通过称为下标的编号来进行访问。数组在使用时要由 DIMENSION或DECLARE命令来定义。数组中元素的数据类型 可以不同。
第2章 Visual FoxPro程序设计基础
数组的定义
1.字段变量
在一个数据表中,一个字段就是一个字段变量。字段变量在 建立表结构时定义,修改表结构时可重新定义,或增删字段 变量。
第2章 Visual FoxPro程序设计基础
2.内存变量
内存变量是表结构之外独立存在于内存中的变量。 Visual FoxPro6.0中共定义了6种类型的内存变量:数 值型、字符型、日期型、日期时间型、逻辑型和货 币型。可分为简单变量和数组变量。 (1) 内存变量赋值命令 格式1:〈内存变量〉=<表达式〉 格式2: STORE <表达式> TO <内存变量表> 功能: 计算〈表达式〉值,然后将计算结果赋给内存 变量。
第2章 Visual FoxPro程序设计基础
(5) 如果被除数与除数不能整除,且被除数与除 数异号,则结果为被除数除以除数而得到的余数再 加上除数。
即: MOD(X1,X2)=X1-INT(X1/X2)*X2+X2 。 【例 5】 ? MOD(10,3) &&结果为:1
? MOD(-10,-3) &&结果为:-1 ? MOD(-10,3) &&结果为:2 ? MOD(10,-3) &&结果为:-2
第2章 Visual FoxPro程序设计基础
第2章 Visual FoxPro程序设计基础
第2章 Visual FoxPro程序设计基础
2.1
Visual FoxPro的数据类型
2.2
数据存储
2.3 Visual FoxPro6.0的常用函数
2.4 Visual FoxPro运算符及表达式
第2章 Visual FoxPro程序设计基础
1:设置严格的日期格式检测(系统默认值),要求所有日期和日 期时间型数据均按严格的格式。
2:设置与1相同,但如果程序代码中出现CTOD()和CTOT()函数时, 会出现编译错误。
第2章 Visual FoxPro程序设计基础
2.2.2 变量
在命令操作和程序运行过程中其值允许变化的量称变量, 在Visual FoxPro6.0中使用的变量分为字段变量、内存变量两 种。每个变量都必须有一个变量名,变量名是由字母、汉字、 数字和下划线组成,但必须以字母或汉字。除自由表中字段 名、索引的TAG标识名最多只能10个字符外,其他的命名可 使用1~128个字符,为避免误解、混淆,避免使用VFP的保 留字
第2章 Visual FoxPro程序设计基础
(2) 表达式值显示命令 格式: ?/?? <表达式表> 功能:,将表达式的值显示在屏幕上。 【说明】 1.命令格式中的?/??可任选一个,它们的输出格式不 同。? 表示从屏幕下一行的第一列起显示结果 ,?? 表示 从当前行的当前列起显示结果。例如:
3. 数组变量
第2章 Visual FoxPro程序设计基础
4.系统变量
由VFP自动生成和维护的变量 一般以下划线开头
举例:
_DIARYDATE &&当前日期
_CLIPTEXT
&&剪贴板文本
[例]通过_calcvalue系统变量将一个数字传到计算器中, 激活计算器窗口并计算结果。
clear
_calcvalue=20
3.逻辑型常量
表示“真”或“假”的量 表示方法:
“真”——.T.、.Y.、.t.、.y. “假”——.F.、.N.、.f.、.n. 注意:两边的点不能少
4.货币型常量
表示货币值的量 表示:以$开头,4舍5入到小数点4位 举例:$123.456789结果为123.4568
第2章 Visual FoxPro程序设计基础
例如:{^2019/05/19 10:04am}、 {^2019-05-21 11:32:14pm}。 但必须注意日期和时间之间必须有空格。
第2章 Visual FoxPro程序设计基础
7.日期时间型常量的设置
日期时间型常量默认的格式是{^ yyyy/mm/dd [hh:mm:ss[am|pm]} Visual FoxPro系统中与日期时间型常量格式有关的命令和设置操作如下: (1)日期格式中的世纪值 【格式】SET CENTURY ON | OFF | TO [nCentury] 【功能】设置日期格式的实际值。 【说明】on:日期数据显示10位,其中年份4位。
5.日期型常量
在Visual FoxPro6.0中日期型常量用花括号“{ }”作为定界符括 起来,格式为: {^YYYY-MM-DD}。三部分的间隔符号可以是: /、-、. 例如:{^2019/05/18},或{^2019-05-18}或{^2019.05.18}。
6.日期时间型常量
日期时间常量也必须用花括号括起来, 格式为: {^YYYY-MM-DD [hh[:mm[:ss]] [a|p]]}
3.1416 1235 1230 4.取整函数INT() 【格式】 INT(〈数值表达式〉) 【功能】 计算并返回〈数值表达式〉的整数部分。 【例 4】 ? INT(-76.93)
-76
第2章 Visual FoxPro程序设计基础
5.求模函数MOD() 【格式】 MOD(<被除数>,<除数>) 【功能】 返回<被除数>除以<除数>得到的余数值。 【说明】 在求模运算中应注意以下几点: (1) 除数不能为0。 (2) 除数为正数,返回正数;如果为负数,返回负 数。 (3) 如果被除数与除数能够整除,结果为0。 (4) 如果被除数与除数不能整除,且被除数与除数 同号,则结果为被除数除以除数而得到的余数。即: MOD(X1,X2)=X1-INT(X1/X2)*X2 。
第2章 Visual FoxPro程序设计基础
3.四舍五入函数ROUND() 【格式】 ROUND(〈数值表达式〉,〈有效位数〉) 【功能】 对〈数值表达式〉的值按指定的〈有效位 数〉进行四舍五入。 【例3】 ? R0UND(3.14159,4), ROUND(1234.9962,0), ROUND(1234.567,-1)
第2章 Visual FoxPro程序设计基础
2.3.2 字符处理函数
1.取子串函数SUBSTR() 【格式】 SUBSTR(〈字符串表达式〉,〈起始位置〉 [, 〈长度〉]) 【功能】 从〈字符串表达式〉中的〈起始位置〉截取子字 符串,〈长度〉为所截取的子串的长度。 【例 1】store ”ABCDEFG” to CN ? SUBSTR(CN,4,2),SUBS(CN,1,4),SUBS(CN,6,3)
2. 字符型常量
由一串字符组成的字符串,用“”(双引号)、‘’ (单引号)、[] (方括号)括起来。 举例: ’副教授’、”boy”、 [数据库系统]是合法 常量,而””I am a boy””、’It’s abest’是非法常量。 注意:最长只能为254个字符
第2章 Visual FoxPro程序设计基础
第2章 Visual FoxPro程序设计基础
2.2 数据存储
2.2.1 常量
常量:在程序的运行过程中不改变其值的量 常量的种类:
数值型常量 字符型常量 逻辑型常量 日期型常量 货币型常量
第2章 Visual FoxPro程序设计基础
1.数值型常量
用整数、小数、科学计数法表示的数 举例:85,-56.2, 1.256E3, 3.8E-2 等
【功能】 返回〈字符串表达式〉中所包含的字符个数,即字符串长 度。
【例 2】 ? LEN(”Visual FoxPro6.0”)
16
3.搜索子串位置函数AT()
【格式】 AT(〈字符串1〉,〈字符串2〉[,<数值表达式>])
【功能】 寻找〈字符串1〉在〈字符串2〉中首次出现的起始位置。 若〈字符串2〉中不包含〈字符串1〉,则返回值为零。若有“数值 表达式”(假设数值表达式为K),则寻找〈字符串1〉在〈字符串2〉 中第K次出现的位置。
格式:DIMENSION |DECLARE <数组名> (<下标1>) [,(<下标2>)] [<数组名> (<下标1>) [,(<下标2>)]]…
例如:dimension sz(10)
declear a(3) , b(2,3)
数组的赋值
sz(1)=”ABCD” && 给SZ(1)赋值,字符型, 值:ABCD
2.3.1 数学运算函数
第2章 Visual FoxPro程序设计基础
1.平方根函数SQRT() 【格式】 SQRT(〈数值表达式〉) 【功能】 计算并返回〈数值表达式〉的算术平方根。 【例 1】 ? SQRT(5*5)
5.00
2.绝对值函数ABS() 【格式】 ABS(<数值表达式>) 【功能】 计算并返回〈数值表达式〉的绝对值。 【例 2】 ? ABS(-43.29)
off:系统默认值。日期数据显示8位,年份2位。 to [ncentury]:指定日期数据所对应的世纪值。 (2)设置日期显示格式 【格式】SET DATE [TO] AMERICAN | ANSI | BRITISH | FRENCH | GERMAN | ITLIAN | JAPAN | USA | MDY | DMY | YMD | SHORT | LONG 【功能】设置日期型和日期时间型数据的显示输出格式。系统默认为 AMERICAN美国格式。
2.1 Visual FoxPro的数据类型
2.1.1 基本数据类型
与其他程序设计语言相比,Visual FoxPro提供了更多的数据 类型。适用于变量和数组的数据类型主要6种,包括:字符 型、数值型、货币型、日期型、日期时间型和逻辑型。
2.1.2 字段数据类型
Visual FoxPro定义了13种字段类型,包括:字符型、数值 型、浮动型、双精度型、整型、货币型、日期型、日期时间 型、逻辑型、备注型、通用型、二进制字符型和二进制备注 型。
【例 3】 X=”Visual FoxPro 6.0”
? AT(”Fox”,X)
&& 显示结果为 8
? AT(”fox”,X)
&& 显示结果为 0
? AT(”o”,X)
&& 显示结果为 9
? AT(”o”,X ,2)
&& 显示结果为 13
第2章 Visual FoxPro程序设计基础
4.空格函数SPACE() 【格式】 SPACE(〈数值表达式〉) 【功能】 产生与〈数值表达式〉的值 相同的空格数。 【例 4】 ? ”学生”+SPACE(4)+”情况”
activate window calculator [例]往剪贴板中写入信息
ቤተ መጻሕፍቲ ባይዱ
_CLIPTEXT="hello!“ 查看剪贴板
第2章 Visual FoxPro程序设计基础
2.3 Visual FoxPro6.0常见函数
函数的一般格式: <函数名>(<自变量表>) 切记:函数名和小括号不能省。 函数的三要素:函数名、参数、函数值 如:ABS(-2)
第2章 Visual FoxPro程序设计基础
7.日期时间型常量的设置
(3)设置日期2000年兼容性 严格的日期格式如下 :
{^ yyyy/mm/dd [hh:mm:ss[am|pm]} 改变日期格式如下: 【格式】SET STRICTDATE TO [0│1│2] 【功能】设置日期格式。 【说明】0:关闭严格的日期格式检测,即设置日期格式按传统的日期 格式。
sz(2)=23.45 && 给SZ(2)赋值,数值型, 值:23.45
sz(3)={^2019-03-02} && 给SZ(3)赋值,日期型, 值:2019年9月2日
sz(4)={^2019-03-02 9:00am} && 给SZ(4)赋值,日期时 间型,值:2019年11月2日上午9点
sz(5)=.T. && 给SZ(5)赋值,逻辑型,值:真
DE ABCD FG 若省略〈长度〉,或者〈长度〉超过从〈起始位置〉到末 尾的长度,则截取的子字符串为从〈起始位置〉到〈字符串 表达式〉末尾的所有字符。例如: ? SUBSTR(”计算机程序设计教程”,11) 设计教程
第2章 Visual FoxPro程序设计基础
2.求字符串长度函数LEN()
【格式】 LEN〈字符串表达式〉
数组是具有相同名字、不同下标值的一组变量。数组中的每 个数据值称为数组元素,每个数组元素在数组中的位置是固定 的,可以通过称为下标的编号来进行访问。数组在使用时要由 DIMENSION或DECLARE命令来定义。数组中元素的数据类型 可以不同。
第2章 Visual FoxPro程序设计基础
数组的定义
1.字段变量
在一个数据表中,一个字段就是一个字段变量。字段变量在 建立表结构时定义,修改表结构时可重新定义,或增删字段 变量。
第2章 Visual FoxPro程序设计基础
2.内存变量
内存变量是表结构之外独立存在于内存中的变量。 Visual FoxPro6.0中共定义了6种类型的内存变量:数 值型、字符型、日期型、日期时间型、逻辑型和货 币型。可分为简单变量和数组变量。 (1) 内存变量赋值命令 格式1:〈内存变量〉=<表达式〉 格式2: STORE <表达式> TO <内存变量表> 功能: 计算〈表达式〉值,然后将计算结果赋给内存 变量。
第2章 Visual FoxPro程序设计基础
(5) 如果被除数与除数不能整除,且被除数与除 数异号,则结果为被除数除以除数而得到的余数再 加上除数。
即: MOD(X1,X2)=X1-INT(X1/X2)*X2+X2 。 【例 5】 ? MOD(10,3) &&结果为:1
? MOD(-10,-3) &&结果为:-1 ? MOD(-10,3) &&结果为:2 ? MOD(10,-3) &&结果为:-2
第2章 Visual FoxPro程序设计基础
第2章 Visual FoxPro程序设计基础
第2章 Visual FoxPro程序设计基础
2.1
Visual FoxPro的数据类型
2.2
数据存储
2.3 Visual FoxPro6.0的常用函数
2.4 Visual FoxPro运算符及表达式
第2章 Visual FoxPro程序设计基础
1:设置严格的日期格式检测(系统默认值),要求所有日期和日 期时间型数据均按严格的格式。
2:设置与1相同,但如果程序代码中出现CTOD()和CTOT()函数时, 会出现编译错误。
第2章 Visual FoxPro程序设计基础
2.2.2 变量
在命令操作和程序运行过程中其值允许变化的量称变量, 在Visual FoxPro6.0中使用的变量分为字段变量、内存变量两 种。每个变量都必须有一个变量名,变量名是由字母、汉字、 数字和下划线组成,但必须以字母或汉字。除自由表中字段 名、索引的TAG标识名最多只能10个字符外,其他的命名可 使用1~128个字符,为避免误解、混淆,避免使用VFP的保 留字
第2章 Visual FoxPro程序设计基础
(2) 表达式值显示命令 格式: ?/?? <表达式表> 功能:,将表达式的值显示在屏幕上。 【说明】 1.命令格式中的?/??可任选一个,它们的输出格式不 同。? 表示从屏幕下一行的第一列起显示结果 ,?? 表示 从当前行的当前列起显示结果。例如:
3. 数组变量
第2章 Visual FoxPro程序设计基础
4.系统变量
由VFP自动生成和维护的变量 一般以下划线开头
举例:
_DIARYDATE &&当前日期
_CLIPTEXT
&&剪贴板文本
[例]通过_calcvalue系统变量将一个数字传到计算器中, 激活计算器窗口并计算结果。
clear
_calcvalue=20
3.逻辑型常量
表示“真”或“假”的量 表示方法:
“真”——.T.、.Y.、.t.、.y. “假”——.F.、.N.、.f.、.n. 注意:两边的点不能少
4.货币型常量
表示货币值的量 表示:以$开头,4舍5入到小数点4位 举例:$123.456789结果为123.4568
第2章 Visual FoxPro程序设计基础
例如:{^2019/05/19 10:04am}、 {^2019-05-21 11:32:14pm}。 但必须注意日期和时间之间必须有空格。
第2章 Visual FoxPro程序设计基础
7.日期时间型常量的设置
日期时间型常量默认的格式是{^ yyyy/mm/dd [hh:mm:ss[am|pm]} Visual FoxPro系统中与日期时间型常量格式有关的命令和设置操作如下: (1)日期格式中的世纪值 【格式】SET CENTURY ON | OFF | TO [nCentury] 【功能】设置日期格式的实际值。 【说明】on:日期数据显示10位,其中年份4位。
5.日期型常量
在Visual FoxPro6.0中日期型常量用花括号“{ }”作为定界符括 起来,格式为: {^YYYY-MM-DD}。三部分的间隔符号可以是: /、-、. 例如:{^2019/05/18},或{^2019-05-18}或{^2019.05.18}。
6.日期时间型常量
日期时间常量也必须用花括号括起来, 格式为: {^YYYY-MM-DD [hh[:mm[:ss]] [a|p]]}
3.1416 1235 1230 4.取整函数INT() 【格式】 INT(〈数值表达式〉) 【功能】 计算并返回〈数值表达式〉的整数部分。 【例 4】 ? INT(-76.93)
-76
第2章 Visual FoxPro程序设计基础
5.求模函数MOD() 【格式】 MOD(<被除数>,<除数>) 【功能】 返回<被除数>除以<除数>得到的余数值。 【说明】 在求模运算中应注意以下几点: (1) 除数不能为0。 (2) 除数为正数,返回正数;如果为负数,返回负 数。 (3) 如果被除数与除数能够整除,结果为0。 (4) 如果被除数与除数不能整除,且被除数与除数 同号,则结果为被除数除以除数而得到的余数。即: MOD(X1,X2)=X1-INT(X1/X2)*X2 。