VisualFoxPro6.0编程基础
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
输 入 时 应 注 意
输入格式:{^yyyy-mm-dd} 例:{^2006-08-28} 1)日期型常量的定界符:{ } 2)以脱字符^开头 3)年份占4位,月、日各占2位
输 出 时 应 注 意
1)输出时的格式:mm/dd/yy 2)关于连接符默认为:/ 3)输出时无定界符 练习
输入 {^2008-1021 } {^2006-03-27} 输出
练习
例: dimension x(2,3) x(1,2)=6 x(1,3)=7 x(2,1)=8 x(2,2)=9 x(2,3)=10 求:x(1)=________ ,x(5)=_________
例1.5 一维数组的应用。 dimension a(5), b(5) a=10 a(5)=23 b(1)=2*a(1) b(3)='中国' b(4)={^2005-10-6} b(5)=$123.2 ?a(1), a(2), a(3), a(4), a(5) ?b(1), b(2), b(3), b(4), b(5)
格式: Dimension | declare <数组名>(<下标上 限1>[,<下标上限2>][,……]) 说明: 1)数组定义后系统自动为每一个元素赋逻 辑假.F.。 2)数组有一个下标称为一维数组,有二个 下标称为二维数组。 3)数组的最小下标为1。 4)数组的类型可以通过使用加以改变,同 一数组的元素类型可以不同。
简单变量
简单内存变量的赋值命令: 格式1:<变量>=<表达式> 格式2:STORE <表达式> TO <变量表> 说明: 1)表达式是运算符与操作对象连接起来 的式子,表达式可为变量、常量、也可 为表达式。 2)变量表中的各变量用逗号分隔。
例:把 2 赋给变量 X和变量 Y 方法1:Store 2 to x,y 方法2:x=2 y=2 区 1)store…to…一次可以为多个变量 别 赋值 2)= 一次只能给一个变量赋值
5)当在赋值、输入命令中只用数组名时,表
示数组的所有元素有同一个值。
6)数组名不能与简单变量重名。
7)由于数组各元素在内存中是连续存放的,
二维数组可作为一维数组来使用。
8)数组中的每一个元素是简单变量,因为简
单变量所有的功能数组元素都具备,简单
变量使用的场合数组元素都是用。
数组:是内存中连续的一片存储区域, 它由一系列元素组成。 例:a(1),a(2),a(3),a(4) • 定义数组: 格式1:dimension <数组名>(数组下标) 例: dimension a(4),dimension b(2,3) 格式2:declare <数组名>(数组下标) 例: declare a(4),declare b(2,3)
2、 Set mark to “ ” ? {^2002-03-05} 输出 03 05 02
2)设置日期显示格式 命令:Set date to …… 例1: Set date to YMD ? {^2006-08-28} 输出 06-08-28
3)设置年份显示位数 命令:Set century on/off 例1: Set century on ? {^2006-08-28}
• 数组中的每一个数据称为一个元素。
• 数组中每一个元素的序号称为下标。 • 数组中的所有元素在内存中是连续存放 的。
数组的定义
格式: Dimension | declare <数组名>(<下标 上限1>[,<下标上限2>][,……]) 例如:dimension a(4)
功能:定义一维或多维数组
数组的定义
数值型常量 字符型常量 逻辑型常量 货币型常量 日期型常量 日期时间型常量
1.数值型常量
(1)整数:由数字组成,如0,-2,3。 (2)实数:
十进制表示形式:它由数字、正负号、小 数点组成。如0.23,-3.14等。 指数表示形式:它由数字、小数点与E或e 组 成 。 如 1.23×103 可 表 示 为 1.23E3, 如 1.23×10-2 可表示为 -1.23e-2 。 E 前要有数 字,E后要有整数。
(2)输出命令
格式:? | ?? [<输出项目表>]
功能:显示输出项目表中的各输出项。
说明:
1)输出项可为变量、常量、表达式。
2)输出项目表中的各项是用逗号分隔的,命 令执行时遇到逗号就空一格。 3) ?是表示在下一行输出各输出项,
4) ??是在当前行当前列输出各输出项。
2.数组
• 数组是按一定顺序排列的数据集合。
说明:
(4).也可加上"to FILE文本文件名"选项,在显 示的同时将结果传送给指定的文本文件保 存.
[说明] 通配符的含义与DOS中的通配符含义一 致.文件名的扩展名是TXT为文本文件.
[格式] DISPLAY/LIST MEMORY
[LIKE<通配符>][TO PRINTER/TO FILE<文件名>]
[功能] 显示内存变量的当前内容, 同时可选择打印或者将这这些内容送到一个文本 文件中.
显示内存变量
[格式] DISPLAY/LIST MEMORY [LIKE<通配符>][ TO FILE<文件名>] 说明: (1).两条命令功能基本相同,仅在显示方式上有所 区别,前者是分页显示,后者以滚动方式显示 (2).该命令用于显示已定义的内存变量
2.字符型常量
字符型常量是用定界符 ( 双引号“”、单引 号‘‘、方括号 [ ]) 括起来的一系列有效字 符,也称为字符串。 如“中国”、“微机”、 ’PC’、’abc’、 [计算机]、 [123]、“3.14159”等。 字符串的最大长度为254个字符。 若字符串中含有定界符,则必须用另一种定 界符括起来。 例如 “学生[爱好]计算机” [I’m a student.]
10/21/08
03/27/06
• 影响日期格式的设置命令 1)设置分隔符 命令:Set mark to [日期分隔符] 例1:?{^2006-08-28} 08/28/06 例2: Set mark to “-” ?{^2006-08-28}
输出 08-28-06
练习
1、 Set mark to “.” ? {^1996-05-19} 输出 05.19.96
a=1 b=.t. c={^2005-10-12} d='A' e={^2005-10-12 12:30:28 a} store 10 to f, g a=[中国] h=$123.23 b=" 哈尔滨 " ?a,b,c,d,e,f,g c=123 ?a,b ??"c=",c ?a,b
显示内存变量
练习
执行如下命令序列后,最后一条命令的显示 结果是( ) DIMENSION M(2,2) M(1,1)=10 第1行 ① ② M(1,2)=20 M(1,1) , M(1,2) M(2,1)=30 第2行 ③ ④ M(2,2)=40 M(2,1) , M(2,2) ? M(2) A)变量未定义的提示 C)20 B)10 D).F
• 构成:$、数字、小数点 125.5479 例:输入 $125.547878 注:1)输出时没有“$”符号 2)输出时小数点后自动保留4位。
练习
输入 输出 34.7536 456.4500 1.7779
$34.75263 $456.45 $1.777888
4.日期型型常量
日期型常量:必须用花括号括起来 (1)通用格式: {mm/dd/yyyy},例如 {08/08/2008}或{8/8/08},空白的日期 可表示为{}、{/}, 需执行SET STRICTDATE TO 0命令; ( 2 )严格格式: {^yyyy-mm-dd} ,若 要设置严格的日期格式,例如{^20088-8}, 需ห้องสมุดไป่ตู้行SET STRICTDATE TO 1命令。
b(1,1) , b(1,2) , b(1,3) b(2,1) , b(2,2) , b(2,3)
• 数组的特点:
例:dimension b(2,3) 1)一个数组中各元素的数据类型可以不 第1行 ① ② ③ 相同 b(1,1) , b(1,2) , b(1,3) 2)数组下限规定为1 第2行 ④ ⑤ ⑥ 例:b(2,1) dimension a(4) , b(2,2) , b(2,3) 3)数组创建后,系统自动给每个数组元 结果:123 例: dimension a(4) a (1)=123 (1) b(1,1) 素赋以逻辑假 .F. .F. b a a (2)=$123.45 (1)=123 b(1,2) abcd b (2) 4)给数组名赋值则给数组中的每个元素 a (3)=“abcd” (3)=“abcd” a (5) b(2,2) 赋值 .F. b a ?a(1),a(2),a(3),a(4) (4)=.T. 5)可用一维数组表示二维数组.
6、逻辑型(用来表示真或假的常量) 真:.T. 、 .t. 、 .Y. 、 .y. 假:.F. 、 .f. 、 .N. 、 .n. 注:逻辑型常量输出时就有两个值: 真: .T. 假: .F.
变量
• 变量是它的值可以改变的量。 • 变量可分为两大类,一类为字段变量、 另一类为内存变量。 • 变量是有名的。 • 标识符是用来标识变量、函数、文件 等名子,即标识符就是一个名子。
标识符的组成规则:
由数字、字母、下划线组成。
以字母、下划线开头。
长度一般为1~128个字符,但对于数组名最 多为10个字符。 避免使用VFP保留字。 汉字与字母同等待遇(一个汉字占两个字符)。
内存变量有N、C、Y、D、T、L六种类
型。
VFP规定内存变量的类型可以改变,即
同一变量可以赋予不同类型的值。
货币量
日期型D
日期时间 型T
年月日表示日 期
年月日、时间 表示日期和时 间
逻辑型L
.T. .t. .Y. .y. .F. .f. .N. .n.
布尔值
整型I
数值型N 浮点型F 双精度B
整数
整数或小数 整数或小数 双精度浮点 数
常量
所谓的常量就是在程序执行中其值不变 的量。 VFP中有6种类型的常量:
Visual FoxPro 编程基础
本节主要内容
1 常量 2 变量 3 表达式 4 系统函数
数据与数据运算
VFP重要的作用就是对数据进行高效的处理。
在VFP中按数据存储类型分为整型、浮点型、字 符型、日期型等多种。 按数据形式分为常量、变量、函数、表达式等;
表1.1 数据类型
数据类型 字符型C 货币型Y 取值范围 任意字符,最大长度为254 说明 任意文本
输出 08/28/2006
练习
1、 Set mark to “.” set date to YMD set century on ? {^2004-12-25} 输出结果:2004.12.25
5、日期时间型: 格式:{<日期>,<时间>} {^YYYY-MM-DD,[hh [:mm[:ss]][a|p]]} 例:输入:{^2006-08-27,10:15 a} 输出结果:08/27/06 10:15:00 AM 注:1)hh,mm,ss,a|p的默认值分别为: 12,00,00,AM 2)输入时逗号不可省,输出时省略
显示内存变量
[格式] DISPLAY/LIST MEMORY [LIKE<通配符>][to printer ]
说明: (3).加上to printer选项,将在屏幕上显示的 同时,送往打印机打印
显示内存变量
[格式] DISPLAY/LIST MEMORY [LIKE<通配符>][ TO FILE<文件名>]
变量
字段变量
变量
简单的内存变量
内存变量
数组 区别:简单内存变量不用定义直接使用, 数组必须先定义再使用。
简单变量
简单内存变量赋值命令: 格式1:<变量>=<表达式> 格式2:STORE <表达式> TO <变量表> 功能: 格式1将表达式的值赋给变量。 格式2将表达式的值赋给变量表中的所有 变量。
2.字符型常量
注:1)定界符要成对出现;
2)输出时没有定界符;
3)如果定界符做为字符串中的一部分, 必须使用其他定界符;
练习
输入 “Visual FoxPro” [“中国北京”] ‘12345’ 输出
Visual FoxPro
“中国北京” 12345
3. 货币型常量
货币型常量以 $ 符号开头,并四舍 五入到小数点后4位