
第四章程序设计 教学课时:10课时 教学要求及内容提纲: 常量、变量、数组、函数和表达式: 程序文件的建立与修改: 程序的基本结构: 过程的概念及使用。 教学重点与难点: 掌握Visual FoxPro6.0中常量、变量、数组、 函数和表达式的使用; 掌握程序设计的基本方法: 学会利用程序方式解决某项任务。 教学实施手段:
教学课时:10课时 教学要求及内容提纲: 常量、变量、数组、函数和表达式; 程序文件的建立与修改; 程序的基本结构; 过程的概念及使用。 教学重点与难点: 掌握Visual FoxPro 6.0中常量、变量、数组、 函数和表达式的使用; 掌握程序设计的基本方法; 学会利用程序方式解决某项任务。 教学实施手段: 第四章 程序设计

4.2 Visual FoxPro的常量与变 量 在Visual FoxPro系统中,数据可用常量、 变量、数组表示,数据还可以用字段、记录和 对象中,由它们存储、容纳各种类型的数据。 因此,常把这些供数据存储的常量、变量、数 组、字段、记录和对象等称为数据存储容器。 用户正是利用不同的数据存储容器,在Visual FoxPro系统中表示、存储、操作、处理各种类 型的数据,实现数据处理的应用
4.2 Visual FoxPro的常量与变 量 在Visual FoxPro系统中,数据可用常量、 变量、数组表示,数据还可以用字段、记录和 对象中,由它们存储、容纳各种类型的数据。 因此,常把这些供数据存储的常量、变量、数 组、字段、记录和对象等称为数据存储容器。 用户正是利用不同的数据存储容器,在Visual FoxPro系统中表示、存储、操作、处理各种类 型的数据,实现数据处理的应用

4.2.1 常量 常量是在命令或程序中可直接引用、具有具体值的命 名数据项,其特征是在整个操作过程中它的值和表现形式 保持不变。Visual FoxPro按常量取值的数据类型,将常量 分为6种类型 数值型常量、货币型常量、字符型常量、逻辑型常量、 日期型常量、日期时间型常量。 1.数值型常量(N) 由数字0-9、小数点和正负号组成,表示整数或实数值。 如;100,-21,15.31,-21092.5041等分别是数值型 常量中的整数和实数。 数值型数据在内存中占用8个字节. 2.货币型常量(Y) 用来表示货币值,书写格式与数据型常量类似.但要多加一 个$前置符号.且采用四位小数.他没有科学记数法,在 内存中占8个字节
4.2.1 常量 常量是在命令或程序中可直接引用、具有具体值的命 名数据项,其特征是在整个操作过程中它的值和表现形式 保持不变。Visual FoxPro按常量取值的数据类型,将常量 分为6种类型 数值型常量、货币型常量、字符型常量、逻辑型常量、 日期型常量、日期时间型常量。 1.数值型常量(N) 由数字0-9、小数点和正负号组成,表示整数或实数值。 如;100,-21,15.31,-21092.5041等分别是数值型 常量中的整数和实数。 数值型数据在内存中占用8个字节 . 2.货币型常量(Y) 用来表示货币值,书写格式与数据型常量类似.但要多加一 个$前置符号.且采用四位小数.他没有科学记数法,在 内存中占8个字节.

3.字符型常量 由任意ASCII字符、汉字和汉字字符组成的字符型数据, 字符型常量又称为字符串。为与其他类型常量、变量和标 识符相区别,Visual FoxPro要求将字符串中所有字符,用 一对双引号“”“或单引号“’”或方括号“[门”作为定界符 对括起来。 如“I am a student..",‘中华人民共和国’, [Visual FoxPro6.0系统]都是字符串。 4.日期型常量 日期型常量是表示日期值的数据,其默认格式是 {mm/dd/[yy]yy}。如{10/01/02}和{10/01/2002}均表示 2002年10月1日这一日期常量值
3.字符型常量 由任意ASCII字符、汉字和汉字字符组成的字符型数据, 字符型常量又称为字符串。为与其他类型常量、变量和标 识符相区别,Visual FoxPro要求将字符串中所有字符,用 一对双引号“"”或单引号“'”或方括号“[]”作为定界符 对括起来。 如“ I am a student..” , ‘中华人民共和国’ , [Visual FoxPro 6.0系统]都是字符串。 4.日期型常量 日期型常量是表示日期值的数据,其默认格式是 {mm/dd/[yy]yy} 。 如 {10/01/02} 和 {10/01/2002} 均 表 示 2002年10月1日这一日期常量值

5.日期时间型常量 Visual FoxPro.系统中增加了一种表示日期和时间值的 日期时间型常量,其默认格式是: {mm/dd/[yy]yy [hh:mm:ss[a p]} 其中a和p分别表示AM(上午)和PM(下午)。 日期值和日期时间值的输入格式与输出格式并不完全相 同,特别是输出格式受系统环境设置的影响,用户可根据应 用需要进行相应调整、设置
5.日期时间型常量 Visual FoxPro系统中增加了一种表示日期和时间值的 日期时间型常量,其默认格式是: {mm/dd/[yy]yy [,] hh:mm:ss[a|p]} 其中a和p分别表示AM(上午)和PM(下午)。 日期值和日期时间值的输入格式与输出格式并不完全相 同,特别是输出格式受系统环境设置的影响,用户可根据应 用需要进行相应调整、设置

(1)日期格式中的世纪值 通常日期格式中用2位数表示年份,但涉及到世纪问 题就不便区分。Visual FoxPro提供设置命令对此进行相 应设置。 命令格式: SET CENTURY ON OFF TO [nCentury] 命令功能: 0N:日期数据显示10位,其中年份4位,即日期值输 出时显示年份值: OFF:(默认值)。日期数据显示8位,年份2位,即 日期值输出时不显示年份值; TO[nCentury]:指定日期数据所对应的世纪值。 nCentury是一个1~99的整数,代表世纪数
(1)日期格式中的世纪值 通常日期格式中用2位数表示年份,但涉及到世纪问 题就不便区分。Visual FoxPro提供设置命令对此进行相 应设置。 命令格式: SET CENTURY ON | OFF | TO [nCentury] 命令功能: ON:日期数据显示10位,其中年份4 位,即日期值输 出时显示年份值; OFF:(默认值)。日期数据显示8位,年份2位,即 日期值输出时不显示年份值; TO [nCentury]:指定日期数据所对应的世纪值。 nCentury是一个1~99的整数,代表世纪数

(2)设置日期显示格式 用户可以调整、设置日期值和时间值的显示输出格式。 既可以用命令方式设置,也可以用菜单方式设置。 命令格式: SET DATE [TO]AMERICAN ANSI BRITISH FRENCH GERMAN ITLIAN JAPAN USA MDY DMY YMD SHORT LONG 命令功能:设置日期型和日期时间型数据的显示输出 格式。系统默认为AMERICAN美国格式。 如果日期格式设置为SHORT:或LONG格式,Visual FoxPro系统将按Windows系统设置的短日期格式或长日 期格式显示输出日期数据,而且SET CENTURY命令的设 置被忽略
(2)设置日期显示格式 用户可以调整、设置日期值和时间值的显示输出格式。 既可以用命令方式设置,也可以用菜单方式设置。 命令格式: SET DATE [TO] AMERICAN | ANSI | BRITISH | FRENCH | GERMAN | ITLIAN | JAPAN | USA | MDY | DMY | YMD | SHORT | LONG 命令功能:设置日期型和日期时间型数据的显示输出 格式。系统默认为AMERICAN美国格式。 如果日期格式设置为SHORT或LONG格式,Visual FoxPro系统将按Windows系统设置的短日期格式或长日 期格式显示输出日期数据,而且SET CENTURY命令的设 置被忽略

各种日期格式设置所对应的日期显示输出 格式,见表4-1所示。 表4-1 系统日期格式 设置值 期格 置 日期格式 式 值 AMERICAN mm/dd/y USA mm-dd-yy y ANSI yy.mm.dd MDY mm/dd/yy BRITISH dd//mm/yy DMY FRENCH dd//mm/yy GERMAN dd.mm.y YMD yy/mm/dd ITAL IAN dd-mm-vv SHORT Windows短日期格式
各种日期格式设置所对应的日期显示输出 格式,见表4-1所示。 表4-1 系统日期格式 设 置 值 日 期 格 式 设 置 值 日 期 格 式 AMERICAN mm/dd/y y USA mm-dd-yy ANSI yy.mm.dd MDY mm/dd/yy BRITISH / FRENCH dd//mm/yy DMY dd//mm/yy GERMAN dd.mm.y y YMD yy/mm/dd ITALIAN dd-mm-yy SHORT Windows短日期格式

(3)设置日期2000年兼容性 通常日期型和日期时间型数据的结果,与SET DATE命令 和SET CENTURY命令设置状态及当前系统时间有关。由于系 统时间与相应设置不同,同一数据的结果可能有不同的解释。 如日期值{10/11/12}可以解释为1912年10月11日、 2012年10月11日、1912年11月10日、1910年11 月12日或者2010年11月12日等。这显然会导致系统 混乱,而且还可能造成2000年兼容性错误,影响系统正常、 有效的操作运行
(3)设置日期2000年兼容性 通常日期型和日期时间型数据的结果,与SET DATE命令 和SET CENTURY命令设置状态及当前系统时间有关。由于系 统时间与相应设置不同,同一数据的结果可能有不同的解释。 如日期值{10/11/12}可以解释为1912 年 10 月 11 日、 2012 年 10 月 11 日、1912 年 11 月 10 日、1910 年 11 月 12 日或者 2010 年 11 月 12 日等。这显然会导致系统 混乱,而且还可能造成2000年兼容性错误,影响系统正常、 有效的操作运行

Visual FoxPro系统增加了一种所谓严格的日期格式。 不论哪种设置,按严格日期格式表示的日期型和日期时间 型数据,都具有相同的值和表示形式。严格的日期格式是: {yyyy-mm-dd[,][hh[:mm[:ss]][a p]]} 符号表明该格式是严格的日期格式,并按照YMD的 格式解释日期型和日期时间型数据,它是严格日期格式的 标志,不可缺少。有效的日期型和日期时间型数据分隔符 为:连字符“-”、正斜杠“/"、句点“.”和空格。如 {^2002-10-01}、{2002-10-0110:30:30a},分别以严格 的日期格式表示2002年10月1日及该日上午10时30分30秒 这两个日期数据
Visual FoxPro系统增加了一种所谓严格的日期格式。 不论哪种设置,按严格日期格式表示的日期型和日期时间 型数据,都具有相同的值和表示形式。严格的日期格式是: {^yyyy-mm-dd[,][hh[:mm[:ss]][a|p]]} ^ 符号表明该格式是严格的日期格式,并按照 YMD 的 格式解释日期型和日期时间型数据,它是严格日期格式的 标志,不可缺少。有效的日期型和日期时间型数据分隔符 为:连字符“-” 、正斜杠“/” 、句点“.”和空格。如 {^2002-10-01}、{^2002-10-01 10:30:30a},分别以严格 的日期格式表示2002年10月1日及该日上午10时30分30秒 这两个日期数据