WAIT[<字符型表达式>][TO<内存变量>][WINDOW][TIMEOUT<数值>], ACCEPT∣INPUT[<字符型表达式>]TO <内存变量>,这3条输入命令实际上为用户提供了一种人机对话的机会。在执行命令时,系统等待用户输入数据。但用ACCEPT,INPUT命令输入的数据必须放在某个内存变量中。故答案为A。
22、要在显示器的5行10列起,显示姓名(C)和年龄(N)两个字段的值,在语句@5,10 SAY的后面应写 。
A.姓名,年龄 B.姓名+年龄 C.姓名+STR(年龄,2) D.′姓名‵+′年龄‵ [分析]在格式化输出语句中,一条语句只能输出一个表达式,不能输出用逗号分开的表达式表,故答案A错;答案B数据类型不匹配;答案D输出的是字符串常量。故答案为C. 23、激活上弹式光带菜单的命令是 。
A.MENU TO B.READ MENU TO C.READ MENU BAR TO D.SET MESSAGE TO
[分析]在FoxPro中,既保留了与FoxBASE兼容的菜单命令,同时又对这些命令进行了扩充,其中MENU TO 命令用于激活光带式菜单;READ MENU TO命令用于激活弹出式菜单;READ MENU BAR TO命令用于激活下拉式菜单。故答案为B. 24、在FoxPro中,Result列应该选择 。
A.Submenu B.Command C.Procedure D.Pad name [分析]在FoxPro中,Result栏的向下箭头可拉出4个选项:Command(一条命令)、Pad Name(某菜单项的名字)、Submenu(子菜单)、Procedure(执行过程)。故答案为A。
25、在FoxPro环境下,要打开屏幕设计窗口进行屏幕设计应该选择“New”对话框中“File Type”框内的单选按钮 。
A.Query B.Screen C.Label D.Menu
[分析]“File Type”框内的单选按钮中Query用于新建一个查询文件;Screen用于建立一个屏幕程序文件;Label用于建立一个标签文件;Menu用于建立一个菜单文件。故答案为B. 26、在报表设计过程中,列表题一般在页的 部分。
A.Page Header B.Detail C.Page Footer D.Summary [分析]在FoxPro的报表设计器中,Page Header区域用于设置报表的标题;Detail用于设置报表的细节区,即具体内容;Page Footer常用于设置页脚;Summary用于在整个报表的最后输出报表的总结内容。故答案为A。
27、将一个应用程序的所有文件集合成一个有机的整体,可使用FoxPro提供的 。
A.菜单生成器 B.报表生成器 C.项目管理器 D.屏幕生成器 [分析]项目管理器可将一个应用程序的所有文件集合成一个有机的整体,形成一个项目文件(.PJX),并且可以编译项目文件为可执行文件(.EXE)。故答案为C.
28、清除屏幕第10行,第17列到第14行,第52列的正确语句是 。 A.@10,17 CLEAR TO 14,52 B.@10,17 CLEAR 14,52 C.10,17 TO 14,52 CLEAR D.CLEAR 10,17 TO 14,52 [分析]格式设计命令@的一个常见的用法是清除屏幕。清除屏幕有4种格式: (1)CLEAR
(2)@<行坐标>,<列坐标>
(3)@<行坐标>,<列坐标>CLEAR
(4)@<行坐标1>,<列坐标1>[CLEAR TO<行坐标2>,<列坐标2> 本题应选格式(4),以清除一个长方形区域的信息。故答案为A。 29、用UPDATE命令修改记录的特点是 。
26
A.边查阅边修改 B.数据库之间自动更新 C.修改当前数据记录 D.按给定条件顺序修改更新
[分析]UPDATE命令是用别名数据库的数据,按指定表达式的值更新当前数据库的指定字段。UPDATE运行过程是自动进行的。故答案为B.
30、FoxPro数据库文件有100条记录,当前记录号是11,执行命令LIST后,记录指针将指向 。 A.第1条记录 B.第100条记录 C.第101条记录 D.文件结束标识位置
[分析]依次显示各条记录后,指针将停止在文件结束标识处,虽然?RECNO()命令显示为101,但是并不存在第101条记录。故答案为D. 二、填空题
1、在FoxPro中,数据库文件的缺省扩展名是 ,可同时打开 个数据库文件,一个数据库文件最多存放10亿条记录,每条记录的字段个数最多允许 ,每个命令行最多字符数可达 。 [分析]DBF,225,255,2048 2、数据管理技术的发展经历了 、 、 和 4个阶段。
[分析]人工管理、文件管理、数据库管理、分布式数据库管理
3、FoxPro字段变量的数据类型有 种。其中字符型数据的最大宽度为 字节。输入图片或声音等主要通过 字段实现,这种数据常用 字母来表示。
[分析] FoxPro字段变量的数据类型有字符型、数值型、日期型、浮点型、逻辑型、备注型和通用型等7种,其中字符型数据的最大宽度为254字节,输入图片或声音等主要通过通用型字段实现,这种数据常用G字母来表示。故答案7,254,通用型,G
4、如果打开一个空数据库文件,用函数RECNO()测试,其结果一定是 。 [分析]打开空数据库之后,由于数据库中没有记录,记录指针同时指向文件结束标识和文件起始标识,EOF()和BOF()皆为真,但记录号为1,说明新记录将从1号开始。故答案:1
5、在FoxPro中,要将含有备注型字段的数据库JS.DBF更名为JS1.DBF应使用命令 和 。
[分析]如果有备注文件,数据库改名时,相应的备注文件(.FPT)必须同时改名,否则改名后的数据库打不开,故答案:RENAME JS.DBF TO JS1.DBF和RENAME JS.FPT TO JS1.FPT。
6、教师数据库文件(JS.DBF)中有职称字段,要求按职称建立独立复合索引文件ZCGZ.CDX,应使用命令 。
[分析]建立独立复合索引文件的命令格式为;INDEX ON<关键字表达式>TAG<标识名>[OF<复合索引 文件名>][FOR/WHILE<条件>]。故答案为:INDEX ON职称TAG职称OF ZCGZ.CDX。
7、在检索过程中,经常使用LOCATE命令定位,其后继命令是 ;测试检索是否成功使用的函数是 。
[分析]在数据库检索过程中,经常使用LOCATE命令定位记录指针。LOCATE命令在当前使用的库中寻找符合条件的记录,查找过程默认总是从第1条记录开始向下顺序查找,若指定了范围,则在指定范围内顺序查找。找到第1条满足条件的记录后,记录指针指向该记录,并将函数FOUND()(用于检测是否找到满足条件的记录)置为.T.,否则,记录指针指向<范围>的底部,并且将函数FOUND()置为.F.。因此也可用EOF()函数值是否为.F.来判断是否找到。CONTINUE命令用于继续查找下一条满足条件的记录。故答案:CONTINUE,FOUND()。
27
8、求0—100间偶数之后的程序如下,将程序中的空白填上。 SET TALK OFF X=O Y=0
DO WHILE X<100 X=X+1
IF ELSE
Y=Y+X ENDIF ENDDO
?″0—100之间的偶数之和为:″,Y SET TALK ON
[分析]此程序中,对于第一个X,用INT(X/2)是否等于X/2判断X是否为偶数;若是,则执行LOOP语句,返回到循环开始;若不是,则说明X的值为奇数,可执行LOOP后面的语句,将奇数累加。故答案:INT(X/2)<>X/2,LOOP。
9、在Menu设计窗口中,建立主菜单的菜单项时,若希望输入一段程序代码时,应选取“Result”列的 。 [分析]在FoxPro中,Result栏的向下箭头可拉出4个选项:Command选项(一个简单命令)、Pad Name选项(某个菜单项的名字)、Submenu选项(子菜单)、Procedure选项(执行过程)。故答案为Procedure。 10、*主程序
SET TALK OFF U=0
V=″FOXPRO″
DO MYPROM WITH U,″OK″,V ?″U=″,U ?″V:″,V RETURN
*子程序:MYPROM
PARAMETERS U1,X,V U1=U1+1 RETURN
[分析]执行DO语句时,子程序PARAMTERS语句的3个参数依次接受调用语句的3个参数,即U1=U(=0),X=″OK″和V=V(V=FOXPRO),作为自己的初值,返回时,U1,V又分别将结果送回给调用语句的变量U,V,故U,V的值与初值有所不同。子程序的3个参数在返回时都被清除。故结果:U=1.00 V:FOXPRO 三、操作题
已知教师数据库JS.DBF: USE JS LIST
记录号# 姓名 性别 出生日期 婚否 职称 基本工资 补贴 工资总额 简历
28
1 李建平 男 07/15/65 .T. 讲师 450.00 85.00 Memo
2 王芳 女 01/20/55 .T. 副教授 600.00 225.00 memo
3 吴瑛 女 09/10/63 .T. 讲师 450.00 185.00 memo
4 张为民 男 03/10/45 .T. 教授 700.00 265.00 Memo
5 刘跃 男 04/10/73 .F. 助教 350.00 145.00 Memo
6 林晓燕 女 09/05/75 .F. 助教 300.00 145.00 Memo
7 周朝海 男 05/21/60 .T. 副教授 600.00 225.00 memo 要求进行如下操作:
1、将男性的“姓名”、“出生日期”、“职称”、“工资总额”复制到NXJS.DBF中。 2、显示所有未婚教师的信息。
3、将基本工资超过400元的记录按基本工资降序排序,并要求新文件只包含姓名、性别、职称、基本工资等四个字段。
4、查询教师数据库JS.DBF职称为”教授”或”副教授”的记录,并将结果存入JGMS.DBF。 5、计算所有教师工资总额。 操作题答案:
①COPY TO NXJS FOR 性别=″男″FIELDS 姓名,出生日期,职称,工资总额 ②LIST/DISPLAY FOR.NOT.婚否或LIST/DISPLAY FOR婚否=.F.
③SORT ON 基本工资/D TO JS1 FOR 基本工资>400 FIELDS 姓名,性别,职称,基本工资 ④SELECT * FROM JS WHERE “教授”$职称 INTO DBF JGMS.DBF ⑤REPLACE ALL 工资总额WITH基本工资+补贴 四、阅读下列程序,写出运行结果 1、SET TALK OFF CLEAR
STORE 1 TO X STORE 20 TO Y DO WHILE X<=Y
IF INT(X/2)<>X/2 X=1+X^2 Y=Y+1 LOOP ELSE
X=X+1 ENDIF ENDDOR ?X ?Y
SET T ALK ON
29
RETURN 运行结果是 。
[分析]IF语句的条件INT(X/2)<>X/2表示,当X为奇数1,3,11时执行X=1+X^2结果为2,10,122,??而相应的Y=Y+1分别为21,22,23。LOOP返回循环开始处,判断X<=Y才继续循环,因此只执行3次。故结果:122 23。 2、已有人事工资库RSGZ。DBF
记录号 职工号 姓名 出生日期 单位 工资 房租 水费 电费 实发工资 1 0004 张月明 01/01/68 计算机 145.00 15.00 3.98 23.05 2 0089 李欣 05/16/65 教务处 160.00 20.00 5.00 28.00 3 0123 王越 03/21/70 计算机 198.00 8.35 3.00 12.05 4 0099 韩保山 08/09/60 教务处 205.00 35.06 10.00 32.05 5 0222 高德明 12/13/70 教务处 98.00 0.00 0.00 0.00
SET TALK OFF USE RSGZ
STORE″王越″TO NAME LOCATE FOR 姓名=NAME ?姓名+STR(工资,7.2) GO 4
IF 工资>100 SKIP ELSE
SKIP –1 ENDIF
DISP姓名,工资 RETURN
1.1. 习题二
1.1.1. 一、单选题
1. 在下面的数据类型中默认值为.F.的是(C)
A)数值型 B)字符型 C)逻辑型 D)日期型 2. Visual FoxPro内存变量的数据类型不包括(D)
A)字符型 B)货币型 C)数值型 D)通用型
3. 执行命令A=2008/5/1,B={^2008/5/1},C=”2008-5-1”之后,内存变量A,B,C的数据类型分别
是(A)
A)N,D,C B)N,D,D C)D,D,C D)C,D,C
4. 使用命令DECLARE aa(3,4)定义的数组,aa包含的数组元素(下标变量)的个数为(D) A)3个 B)4个 C)7个 D)12个 5. 下面关于Visual FoxPro数组的叙述中,错误的是(C)
A) 用DIMENSION和DECLARE都可以定义数组
30