首页 百科知识 基础与函数

基础与函数

时间:2022-10-17 百科知识 版权反馈
【摘要】:3.掌握 Visual FoxPro中各种数据类型,以及常量、变量、数组、函数、赋值语句、简单输出语句的使用。1.Visual FoxPro集成环境的使用:首先隐藏“常用”工具栏,然后再显示出来;先关闭命令窗口,再将命令窗口显示出来。项目是文件、数据、文档和Visual FoxPro对象的集合,其文件带有.pjx扩展名。3.设X1=“Visual FoxPro程序设计”,执行?

实验二 Visual FoxPro基础与函数

实验目的

1.熟悉Visual FoxPro系统的集成环境:菜单、工具栏、命令窗口及其基本操作。

2.掌握项目文件的创建、打开、使用和关闭方法。

3.掌握 Visual FoxPro中各种数据类型,以及常量、变量、数组、函数、赋值语句、简单输出语句的使用。

实验题目

1.Visual FoxPro集成环境的使用:首先隐藏“常用”工具栏,然后再显示出来;先关闭命令窗口,再将命令窗口显示出来。

2.项目管理器的基本操作:创建一个项目文件“xjgl.pjx”,保存在自己的存储器的myfile文件夹下。

3.计算自己的年龄,并把结果与自己的姓名连接在一起以一个内存变量保存在内存变量文件USER.MEM中。

4.定义一个最大下标为10的一维数组AA和一个2行3列的二维数组BB,使AA数组中的每个元素的值均为100,使数组BB的1行的三列值均为“abc”;分别显示AA(3),AA(0)和AA(11)的值,再分别显示BB(1,3)和BB(3)的值,然后再显示BB(2,1)的值,你得出了什么结果?

实验步骤

2-1 实验步骤

分析:启动Visual FoxPro,观察Visual FoxPro界面,用鼠标单击各个系统菜单仔细观察。

“常用”工具栏的显示与隐藏

1.利用系统菜单“显示”——“工具栏”命令。

2.单击“工具栏”窗口中的“常用”,该工具栏即被隐藏。

3.再次利用系统菜单“显示”——“工具栏”命令,单击“工具栏”窗口中的“常用”,该工具栏即显示。

“命令窗口”的显示与关闭

方法一

1.利用系统菜单“窗口”菜单下的“隐藏”命令可隐藏命令窗口。

2.利用系统菜单“窗口”菜单中的“命令窗口”命令可把它显示出来。

方法二

1.利用鼠标可直接关闭命令窗口。

2.利用常用工具栏上的“命令窗口”工具按钮可隐藏或关闭命令窗口。

2-2 实验步骤

分析:“项目管理器”是Visual FoxPro中处理数据和对象的主要组织工具,是用户使用Visual FoxPro的“控制中心”,用它来管理大量的数据表、代码和查询等操作,为数据提供了一个组织良好的分层结构视图。项目是文件、数据、文档和Visual FoxPro对象的集合,其文件带有.pjx扩展名。1.在学生自己的存储器中建立一个myfile的文件夹。

2.创建项目文件。

菜单法:

(1)利用系统菜单“文件”\“新建”,在弹出的对话框中选择文件类型“项目”,然后再单击“新建文件”按钮。

(2)在创建对话框中选择项目文件保存的位置及保存的文件名,然后进入项目管理器的界面。

命令法:在命令窗口中使用命令CREATE PROJIECT,用上面(2)即可。

3.“项目管理器”的基本操作。

(1)单击“+”或“-”展开或折叠列表项。

(2)折叠和还原“项目管理器”界面:单击“项目管理器”右上角向上箭头,“项目管理器”即被折叠,同时向上箭头变为向下箭头,单击它,则“项目管理器”展开。

4.拖动和还原“项目管理器”。

(1)拖动或双击“项目管理器”的标题栏,“项目管理器”停放到工具栏的位置,并成为工具栏的一部分。此时,项目管理器中的各选项卡仍可打开。

(2)用鼠标指针双击“项目管理器”工具栏左侧即可还原它。

2-3 实验步骤

分析:年龄的获得通常是用现在的年份减去自己出生的年份。可利用计算机系统日期通过函数取得现在的年份,然后再进行运算,最后把结果与自己的姓名连接起来,用保存内存变量的命令保存即可。

假设出生年份:1985年

姓名:张三

参考步骤:

img48

2-4 实验步骤

img49

附:常用函数的使用

1.数值函数

(1)ABS()求绝对值 例如求−123.45的绝对值 ?ABS(−123.45)

(2)EXP()求e为底的指数函数 例如求e3 ?EXP(3)

(3)INT()取整函数 例如取123.56的整数 ?INT(123.56)

(4)MOD()求余运算

例如求(10,3)和(10,−3)的余运算

?MOD(10,3)

?MOD(10,-3)

(5)SQRT()求平方根函数 例如求10的平方根 ?SQRT(10)

2.字符函数

(1)&<字符型内存变量>[.] 宏代换函数

(2)LEN()求字符串长度

例如从求字符串“Visual FoxPro程序设计”的长度

?LEN(“Visual FoxPro程序设计”)

(3)取子串函数

LEFT(字符串表达式,<长度>)

例如从字符串“Visual FoxPro程序设计”左边起取5个长度的字符

?LEFT(“Visual FoxPro程序设计”,5)

RIGHT(字符串表达式,<长度>)

例如从字符串“Visual FoxPro程序设计”的右边取4个长度的字符

?RIGHT(“Visual FoxPro程序设计”,4)

SUBSTR(字符串表达式,<起始位置>,[<长度>])

例如从字符串“Visual FoxPro程序设计”的第4个字符开始取出长度为4的字符

?SUBSTR(“Visual FoxPro程序设计”,4,4)

(4)AT(字符串表达式1,字符串表达式2)求字符串表达式1在字符串表达式2中首次出现的位置

例如求字符串“程序”在字符串“Visual FoxPro程序设计”中首次出现的位置

?AT(“程序”,“Visual FoxPro程序设计”) 结果为:4

例如求字符串“程Visual FoxPro序”在字符串“Visual FoxPro程序设计”中首次出现的位置

?AT(“程Visual FoxPro序”,“ Visual FoxPro程序设计”) 结果为:0

(5)STUFF(字符串表达式1,起始位置,长度,字符串表达式2)用字符串表达式2从字符串表达式1的起始位置替换指定的长度的字符数)

例如用字符串“12”替换字符串“1234567”中“34”两个字符

?STUFF(“1234567”,3,2,‘12’) 结果为:1212567

例如把字符串“12”插入在字符串“1234567”中第3个字符处

?STUFF(“1234567”,3,0,‘12’) 结果为:121234567

3.转换类操作函数

(1)字符与ASCII转换函数

ASC(字符表达式)把第一个字符转换成ASCII值

例如求字符串“ABCD”中字符“A”的ACCII值

?ASC(“ABCD”)

CHR(数值表达式):ASCII码转换成字符

例如求ASCII值为65对应的字符

?CHR(65)

(2)字符与日期相互转换

CTOD(字符表达式):字符型转换成日期型函数 ?CTOD(“01/02/98”)

DTOC(日期表达式):日期型转换成字符型函数 ?DTOC(DATE())

(3)字符与数值相互转换

VAL(<字符表达式>):将字符型表达式中前面数值转换成数值型

例如把字符“12.4ABC67”中数字字符转换为数值

?VAL(“12.4ABC67”) 结果为:12.40

例如把字符“A12.33B”中数字字符转换为数值

?VAL(“A12.33B”)=0.00 结果为:0.00

STR(<数值型表达式>[,<长度>] [,<小数位数>]):数值型转换成字符型

例如下面把数值100.567转换为相应的字符

?STR(100.567,6,2) 结果为:101.57

?STR(100.567,6) 结果为:img50101 注意:宽度不够,前面用三个字格符占位

?STR(100.567,3) 结果为:101

思考题

1.请用“STORE”和“=”两种赋值方式分别给X赋值为3,Y赋值为5,然后请执行下列运算 ?X=Y-2,结果是什么?

2.执行 ?MOD(-10,-3)的结果是_______________。

3.设X1=“Visual FoxPro程序设计”,执行?SUBSTR(X1,INT(LEN(X1)/2-1),4)的结果是_______________q。

4.执行?STR(223.22,6,2)+STR(VAL("32"),2)的结果是_______________。

5.执行下列有关日期函数并填空:

? DATE ( )

X1= DATE ( )+ 10

?X1

?TYPE(X1)     显示X1的数据类型是_______________

Y1=X1-{^2000-01-01}

?Y1

?TYPE(Y1)     显示Y1的数据类型是_______________

?X1+{^2000-01-01}  屏幕显示的结果是_______________

思考:日期数据能进行加法运算吗?

6.依次执行下列命令,注意观察结果:

? IIF (3>2,1,-1 )

? BETWEEN (90,20,100)

x=0

?empty(x)

y=""

?empty(y)

m=ctod("")

?empty(m)

Xx=.null.

?empty(xx)

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈