1、计算机等级考试(Visual Foxpro部分)题库 一、选择题 1、用二维表数据来表示实体之间联系的数据模型称为( D )。 A) E-R模型 B) 层次模型 C) 网状模型 D) 关系模型 2、关系型数据库管理系统中的关系是指( C )。 A) 各条记录中的数据有一定的关系 B) 一个数据库文件与另一个数据库文件之间有一定的关系 C) 数据模型中满足一定条件的二维表格式 D) 数据库中各个字段之间有一定的关系 3、Visual Foxpro 6.0是一个( D )。 A) 4位数据库开发系统 B) 8位数据库开发系
2、统 C) 16位数据库开发系统 D) 32位数据库开发系统 4、显示与隐藏命令窗口的操作为( D )。 A) 单击“常用”工具栏上的“命令窗口”按钮 B) 通过“窗口”菜单下的“命令窗口”选项来切换 C) 按Ctrl+F2或Ctrl+F4组合键 D) 以上方法都可以 5、“选项”对话框的“文件位置”选项卡用于设置( B )。 A) 表单的默认大小 B) 默认目录 C) 日期与时间的显示格式 D) 程序代码颜色 6、“项目管理器”的“数据”选项卡用于显示和管理( C )。 A) 数据库、自由表和查询 B) 数据库、视图
3、和查询 C)数据库、自由表、查询和视图 D) 数据库、表单和查询 7、“项目管理器”的“文档”选项卡用于显示和管理( D )。 A) 表单、报表和查询 B) 数据库、表单和报表 C) 查询、报表和库文件 D)表单、报表和标签 8、打开数据库的命令为( D )。 A) USE B) USE DATABASE C)OPEN D)OPEN DATABASE 9、为当前表所有职工增加168元工资,应使用命令( C )。 A) CHANGE 工资 WITH 工资+168 B) CHANGE ALL
4、工资 WITH 工资+168 C) REPALCE ALL工资 WITH 工资+168 D) REPALCE 工资 WITH 工资+168 10、Visual Foxpro的备注型字段中存放( D )。 A) 字段值 B)字符串 C)Memo D) 指向备注文件的指针 11、某数据库共有5个字段,其中第一个字段是字符型,宽度为8;第二个字段是数值型,宽度为8;其余3个字段分别是逻辑型、日期型、备注型,则该数据库中记录长度是( A )。 A) 35B B) 32B C) 33B D)无法计算 12、下述命令中(
5、 C )不能关闭数据库。 A) USE B) CLOSE DATABASE C) CLEAR D) CLEAR ALL 13、下面关于视图的描述中,正确的是( D )。 A) 可由自由表建立视图 B) 可由查询建立视图 C) 可由数据库表建立视图 D) 可由数据库表和自由表建立视图 14、SQL的数据操作语句不包括( D )。 A) INSERT B) UPDATE C)DELETE D)CHANGE 15、SQL语句中修改表结构的命令为( C )。 A) ALT
6、ER B) MODIFY STRUCTURE C) ALTER TABLE D) ALTER STRUCTURE 16、下面关于属性、方法和事件的叙述中,错误的是( D )。 A) 属性用于描述对象的状态,方法用于表示对象的行为 B) 事件代码也可以像方法一样被显示调用 C) 基于同一个类产生的两个对象可分别设置自己的属性值 D) 在新建一个表单时,可以添加新的属性、方法和事件 17、下面关于数据环境与数据环境中关系的陈述中,( D )是正确的。 A) 数据环境是对象,关系不是对象 B) 数据环境不是对象,关系是对象 C) 数据环境和关系都
7、不是对象 D) 数据环境是对象,关系是数据环境中的对象 18、在表单设计器环境下,选定表单中某选项组里的某个选项按钮的正确方法为( C )。 A) 单击选项按钮 B) 双击选项按钮 C) 先单击选项组,并选择“编辑”命令,然后再单击选项按钮 D) 上面B)和C)都正确 19、在“报表设计器”中,可使用的控件为( A )。 A) 标签、域控件和线条 B) 标签、域控件和列表框 C) 标签、文本框和组合框 D) 文本框、布局和数据源 20、在创建快速报表时,其基本带区包括( B )。 A) 标题、细节和总结
8、 B) 页标头、细节和页注脚 C) 组标头、细节和列注脚 D)报表标题、细节和行注脚 21、Visual Foxpro中,用于建立或修改过程文件的命令为( B )。 A) MODIFY<文件名> B) MODIFY COMMAND <文件名> C) MODIFY PROCEDURE <文件名> D) 前面都不正确 22、如一个过程不含RETURN语句,或RETURN语句中没有指定表达式,则此过程( C )。 A) 返回 1 B) 返回 0 C) 返回 .T. D) 返回 .F. 23、将一
9、个项目编译为一个应用程序时,下面的叙述正确的是( B )。 A) 所有的项目文件将组合为一个单一的应用程序文件 B) 所有项目的包含文件将组合为一个单一的应用程序文件 C) 所有项目排除的文件将组合为一个单一的应用程序文件 D) 选定的项目文件将组合为一个单一的应用程序文件 24、整个应用程序入口点的主程序应最少具有以下功能( D )。 A) 初始化环境 B) 初始化环境、显示初始用户界面 C) 初始化环境、显示初始用户界面、控制事件循环 D) 初始化环境、显示初始用户界面、控制事件循环,退出应用程序时恢复环境 25、应用程序生成器的“数据”选项卡中可( D )
10、 A) 为表只生成一个表单和报表,并可选择样式 B) 为多个表生成表单必须有相同的样式 C) 为多个表生成报表必须有相同的样式 D) 用表向导创建应用程序中所需的表 26、对象可以可视化地或程序化的建立或引用。对象的引用分为( B )。 A) 直接引用和间接引用 B) 绝对引用和相对引用 C) 过程引用和程序引用 D) 顺序引用和循环引用 27、在SQL查询时,ORDER BY 子句用于( D ) A)指出查询目标 B)指出查询结果 C)指出查询条件 D)将查询结果
11、排序 28、可以随着表的打开而自动打开的索引是( C ) A)单一索引文件(IDX) B)复合索引文件(CDX) C)结构化复合索引文件 D)非结构化复合索引文件 29、不论索引是否生效,定位到相同记录上的命令是( C ) A)GO TOP B)GO BOTTOM C)GO 8 D) SKIP 30、在下列函数中,函数值为数值型的是( A ) A)AT(’人民’,’中国人民大学’) B) CTOD(”06/08/98”)
12、C) BOF( ) D) SUBSTR(DTOC(DATE()),1,2) 二、填空题 1、数据模型不仅反映事物本身,而且还反映 事物之间的联系 。 2、二维表中的列称为关系的 属性 ;二维表中的行称为关系的 元组 。 3、在关系数据库的基本操作中,从关系中取出满足条件元组的操作称为 选择 ;将两个关系中相同属性值的元组联接到一起形成新的二维表的操作称为 联接 ;从表中抽取若干属性组成新的关系称为 投影 。 4、Visual Foxpro 6.0支持标准的面向过程的程序设计方式,也支持 面向对象 程序设计方法。
13、 5、在Visual Foxpro中打开不同的文件时,系统将自动调用相应的 设计器 来打开它们。 6、安装完Visual Foxpro后,系统自动用一些默认值来设置环境,要定制自己的系统环境,应单击 工具 菜单下的 选项 菜单项。 7、项目管理器文件的项目文件的扩展名是 pjx或pjt 。 8、扩展名为.prg的程序文件在“项目管理器“的 代码 选项卡中显示和管理。 9、项目管理器的“移去“按钮有两个功能:一是把文件 从项目管理器中移去 ,二是 从磁盘上删除 。 10、实现表之间的关联——临时联系的命令为 SET RELATION . 11、在定义
14、字段有效性规则时,在规则中输入的表达式类型为 逻辑表达式 。 12、查询设计器 不能 生成所有的SQL查询语句。 13、通过Visual Foxpro视图,不仅可查询数据库表,还可 更新 数据库表。 14、进行分类汇总的数据库文件必须按照适当的表达式进行索引或 排序 。 15、在Visual Foxpro中DELETE命令为 逻辑 删除记录。 16、在SQL SELECT中用于计算检索的函数有 COUNT 、 SUM 、 AVG 、MAX与MIN。 17、SQL的含义为 结构化查询语言 。 18、下拉式菜单一般由一个 条形菜单 与一组 弹
15、出式菜单 组成。 19、报表主要包括两部分内容: 数据源 与 布局 。 20、如果对报表进行了数据分组,报表将自动含 组标头 和 组注脚 带区。 21、查询设计器的“联接”选项卡用来指定查询的 联接条件 。 22、查询设计器的“筛选”选项卡用来指定查询的 查询条件 。 三、判断题 1、数据库DB、数据库系统DBS与数据库管理系统DBMS三者之间的关系为DBS包含了DB和DBMS。( √ ) 2、比较是专门的关系运算。( × ) 3、硬件系统不属于数据库系统。( × ) 4、Visual Foxpro数据库文件为管理数据库对象的系统文件。( √ ) 5、
16、查询设计器中包括的选项卡有字段、筛选、排序依据。( √ ) 6、SQL语句的条件短语的关键字是WHILE。( × ) 7、在表单设计器环境下,选定命令按钮组中某命令按钮的方法为从属性窗口的对象下拉式组合框中选择所需的命令按钮。( √ ) 8、关于列表框和组合框的叙述是否正确:组合框可以设置成多重选择,而列表框不能。( × ) 9、连编应用程序不生成的文件为.app。( × ) 10、关于运行Visual Foxpro应用程序的叙述是否正确:.exe应用程序可以在Visual Foxpro和Windows环境下运行。( √ ) 四、阅读程序并写出运行结果 1、有如下程序 SET
17、 TALK OFF CLEAR STORE 0 TO k,l DO WHILE .T. k=k+1 l=l+k IF k>=100 EXIT ENDIF ENDDO ?”l=’+STR(1,4) SET TALK ON RETURN 程序运行结果为 。 2、设sb.dbf数据库表中有10条记录,程序如下 SET TALK OFF CLEAR USE sb GO 6 LIST ?RECNO( ) SET TALK ON RETURN 程序运行结果为 11
18、 。 3、有如下程序 SET TALK OFF CLEAR m=0 n=100 DO WHILE n>m m=m+n n=n-10 ENDDO ?m SET TALK ON RETURN 程序运行结果为 100 。 4、有如下程序 INPUT TO x IF x=168 S=198 ELSE S=168 ENDIF S=16 ?S RETURN 程序运行结果为 16 。 5、有一个数据库表文件文件,名为选课.DBF,内容如下: 记录号 学号
19、 课程号 成绩 1 000001 000001 67 2 000001 000002 89 3 000001 000003 90 4 000001 000004 69 5 000002 000001 80 6 000002 0000
20、02 78 7 000002 000003 80 8 000002 000004 90 9 000003 000001 69 10 000003 000002 89 11 000003 000003 99 12 000003 000004
21、 89 程序如下 SELECT 课程号,SUM(成绩)AS总成绩; FROM 选课 GROUP BY 课程号; ORDER BY 总成绩 ASC; INTO CURSOR temp GOTO BOTTOM ? 总成绩 RETURN 程序运行结果为 269 。 6、设st.dbf数据文件共有99条记录,程序如下 SET TALK OFF CLEAR USE st GO 8 DISPLAY ALL ?RECNO( ) SET TALK ON 程序运行结果为
22、 100 。 7、有如下程序 SET TALK OFF CLEAR DIMENSION a(2,3) i=1 DO WHILE i<=2 j=1 DO WHILE j<=3 a(i,j)=i*j ??a(i,j) j=j+1 ENDDO ? i=i+1 ENDDO SET TALK ON RETURN 程序运行结果为 1 2 3 2 4 6 。 8、有如下程序 SET TALK OFF DIMENSION a(6) FOR i=1 TO 6 a(i)=38-
23、i*i ENDFOR k=5 Do WHILE k>=1 a(k)= a(k)-a(k+1) k=k+1 ENDDO ? a(2),a(4),a(6) SET TALK ON 程序运行结果为 16 11 2 。 9、有一个表文件选课.dbf,内容如下: 记录号 学号 课程号 成绩 1 000001 000001 67 2 000001 000002 89 3
24、 000001 000003 90 4 000001 000004 69 5 000002 000001 80 6 000002 000002 78 7 000002 000003 80 8 000002 000004 90 9
25、 000003 000001 69 10 000003 000002 89 11 000003 000003 99 12 000003 000004 89 程序如下 CLEAR ALL SET TALK OFF USE 选课 STORE 0 TO s LOCATE FOR 成绩>69 DO WHILE .NOT.EOF( )
26、 IF SUBSTR(课程号,6,1)=”1” s=s+成绩 ENDIF CONTINUE ENDDO ? s SET TALK ON USE RETURN 程序运行结果为 80 。 10、有如下程序 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*x y=y+1 LOOP ELSE
27、 x=x+1 ENDIF ENDDO ?x ?y SET TALK ON RETURN 程序运行结果为x的值是 122 ,y的值是 23 。 11、已知学生数据文件st.dbf,有记录5条如下: 记录号 姓名 性别 年龄 1 刘敏 女 24 2 张明 男 22 3 王倩 女 21 4 欧阳 男 22 5 刘明
28、 女 23 执行下面程序: SET TALK OFF CLEAR USE st LIST INDEX ON 年龄 TO PJ SEEK 22 ?姓名,性别,年龄 SKIP ?姓名,性别,年龄 SET TALK ON RETURN 程序运行最后一条?命令显示内容为 欧阳 男 22 。 五、程序完整填空 1、有一程序如下: INPUT “请输入n:”
29、 TO s
IF s>100
DO p1
ELSE
IF s>60
DO p2
ELSE
DO p3
ENDIF
ENDIF
RETURN
分别写出执行p1、p2、p3子程序的条件:
DO p1条件为: s>100
DO p2条件为: 60
30、i<=100 sum=sum+i*i i=i+1 ENDDO ?sum SET TALK ON RETURN 3、填充语句,使之成为接收到从键盘输入的Y或N才退出循环的程序。 DO WHILE .T. WAIT”请输入Y/N” TO yn IF (UPPER(yn)<>’Y’.AND.(UPPER(yn)<>’N’) LOOP ELSE EXIT ENDIF ENDDO 4、下列程序能在屏幕上显示一个由“*”组成的三角形(如图所示),将程序补
31、充完整。 * *** ***** ******* SET TALK OFF CLEAR k=1 ch=10 DO WHILE k<=4 s=1 DO WHILE s<=2*k-1 @k, ch SAY ‘*’ s=s+1 ch=ch+1 ENDDO ch=1
32、0-k k=k+1 ENDDO SET TALK ON RETURN 5、下面程序用于显示职称为教授的数据记录,将程序补充完整。 SET TALK OFF CLEAR USE TEACHER DO WHILE .NOT. EOF( ) CLEAR IF 职称<>”教授” SKIP LOOP ENDIF DISPLAY WAIT “按任意键继续!” SKIP ENDDO SET TALK ON RETURN 6、将
33、下面程序补充完整。 SET TALK OFF USE STD ACCEPT “请输入待查学生姓名:” TO name DO WHILE .NOT. EOF( ) IF 姓名=name ?“姓名:”+姓名,“成绩:”+STR(成绩,3,0) ENDIF SKIP ENDDO SET TALK ON RETURN 7、计算机等级考试考生数据表为st.dbf,笔试和上机成绩已分别录入其中的“笔试”和“上机”字段(皆为N型)中,此外另有“等级”字段(C型)。凡两次考试均达到80分以上者,就在等级字段中
34、填入“优秀”。编程如下,试补充完成程序。 SET TALK OFF USE st DO WHILE .NOT. EOF( ) IF 笔试>=80.AND.上机>=80 REPLACE 等级 WITH “优秀” ENDIF SKIP ENDDO USE SET TALK ON 8、下面程序用于从键盘输入100个数,统计其中的最大数。将程序补充完整。 SET TALK OFF k=1 INPUT “请输入第一个数:” TO mx DO WHILE k< 101
35、 INPUT “请输入一个数:” TO tem
IF mx 36、m=姓名
Kf=分数
ENDIF
ENDDO
CLEAR
? xm,kf
USE
SET TALK ON
RETURN
六、上机操作题
(一)基本操作题
1、(1)在考生文件夹下新建一个名为“口令表单”的文件,并将表单标题改为“口令”。
(2)为表单添加2个标签、2个文本框和2个命令按钮。
(3)修改每个控件属性,属性要求如下:
l 将标签的Caption属性值分别设置为:“用户名”和“口令”
l 将命令按钮的Caption属性值分别设置为:“确定”和“退出”
l 在第二个文本框中要求屏蔽输入的字符,全部显示为“*” 37、
(4)为表单的“退出”命令按钮编写程序代码,要求单击此按钮时退出表单
(5)在考生文件夹下建立文件名为“学生档案管理”的菜单,要求此菜单包含“初始化”、“查询”、“修改”、“报表”和“退出”五个菜单栏。各菜单栏包含如下子菜单:
l 初始化:学生表、班级表、成绩表
l 查询:按班级查询、按姓名查询
l 修改:档案修改、成绩修改
l 报表:学生档案表、成绩表
l 退出:退出
要求为“退出”菜单命令编写程序代码,使菜单正确退出。
(6)为成绩表设计一个名为“成绩报表”的快速报表,在报表打印出成绩表的全部内容。
2、(1)新建名为“修改职工记录”的表单文件,标题为“职 38、工记录”。
(2)在考生文件夹中有数据表文件“职工表”,将此数据表的所有字段添加到表单的数据环境中。
(3)将“职工表”中的字段添加到表单,运行表单时,显示职工表中的记录。
(4)为表单添加一个命令按钮,修改其Caption属性值为“退出”,单击此按钮退出表单。
(5)根据职工表,建立一个名为zgj的视图,要求含有职工号、姓名、部门名称和职务,按部门升序排列。
(6)为职工表设计一个名为zgb的快速报表。
3、(1)新建一个名为“数值排列”的表单文件。
(2)在此表单中添加1个标签、1个命令组按钮和1个容器控件。
(3)修改标签属性使标签能自动显示字 39、符宽度,命令组按钮中的两个命令按钮标题分别为“反向排列”和“重置”,容器控件的外观为“凸起”状态。
(4)在容器控件中添加6个文本框控件,此文本框只用于接收数字字符。
(5)在考生文件夹下新建一个名为“快速菜单”的菜单文件,要求在此菜单中包含“文件”和“退出”两个菜单项,在“文件”项中包含“新建”、“打开”和“关闭”三个菜单命令,在退出中包含“退出”菜单命令。
(6)根据“职工表”数据表结构,设计一个分栏报表“职工分栏.frx”,要求报表设计如下:
l 为报表添加一个页标头“职工基本情况”,并在页标题下添加一条粗细为4磅的线条
l 将报表每行显示3条职工信息,并在每条记录 40、下添加一条点线
l 在页脚处添加日期
4、(1)新建一个名为“记录查询”的表单文件。
(2)为表单添加一个组合框和一个命令按钮,命令按钮的标题为“退出”。
(3)在考生文件夹下有“职工表”,将此表添加到数据环境。
(4)为表单添加数据表中的字段,显示表中的所有字段名。
(5)设计一个名为“多样化菜单”菜单文件,要求此菜单中包含4个主菜单项,各个菜单项中包含各自的子菜单。各主菜单的名称如下:
l 查询:按姓名查询、按部门查询
l 编辑:添加记录、删除记录、修改记录
l 报表:月报表打印、日报表打印
l 退出:退出
设计过程中,要求为4个主菜单名分别设 41、置访问键:依次为ALT—F、ALT—E、ALT—P和ALT—Q,并在编辑菜单项的子菜单中,为删除记录和修改记录之间添加一根分隔线,最后为“退出”菜单命令编写一条退出菜单的命令,并设计命令代码退出菜单。
5、(1)在考生文件夹下建立一个名为“表单集合”的项目管理器。
(2)在新建的项目管理器中新建一个名为“变色背景”的表单。
(3)打开新建的表单,为表单添加一个标签、一个命令按钮组。
(4)增加命令按钮组中的按钮个数为4个,并调整大小使按钮全部显示。
(5)按下列要求修改每个控件的属性:
l 标签Label1的标题为“单击命令按钮,表单显示相应的背景色”。
l 命令 42、按钮组的4个按钮的标题依次为“白色”、黑色“、红色”和“蓝色”。
(6)为“变色背景”表单添加一个名为“退出”的命令按钮Command1,编写程序代码,要求单击“退出”按钮时,系统弹出一个“欢迎使用本系统”信息窗口,单击“确定”按钮后,释放表单。
(7)在考生文件夹下新建名为“资产设备管理”的菜单文件,在菜单中包含3个主菜单名“文件”、“显示”和“报表”,三个菜单项中分别包含以下菜单命令:
l 文件:新建、打开、关闭和退出
l 显示:仓库表、职工、供应商
l 报表:日报表、月报表
根据此菜单内容,要求3个主菜单名分别设置如下内容:
l 为三个主菜单名分别设置访问键:依次为 43、ALT—F、ALT—B、ALT—P
l 在“文件”菜单项中,为“关闭”和“退出”菜单命令之间添加一条分隔线,在“报表”菜单项中,为“日报表”和“月报表”菜单命令之间添加一条分隔线
l 设定“退出”菜单命令的程序指令退出菜单,并为“退出”命令设置快捷键CTRL+Q。
(二)综合应用题
1、有一数据表为“班级表.dbf”,新建一个名为“查询民族”的命令文件,保存在考生文件夹中,功能如下:
l 运行此程序时,能将班级表中民族=“汉族”的学生记录全部显示出来,并统计出汉族学生的总人数
l 不得使用SQL语句设计此程序
2、有一数据表为“成绩表.dbf”,新建一个名为“等级评定”的命令文件 44、要求此程序能根据每个学生的平均分来确定学生的等级,并将结果添加到成绩表中,最后显示出成绩表中的及格率。
3、设计一个名为“利润统计.prg”的命令文件,要求此文件统计出所有产品的总销售额,然后减去成本价格后的总利润。
此程序中涉及到的数据表文件为销售表和生产表,表内容如下:
生产表(产品编号,产品名称,部门编号,生产日期,生产数量,产品成本,库存)
销售表(定单号,产品编号,销售数量,产品单价)
将结果利用消息框显示。
4、设计一个名为“职工记录”的表单,要求在表单中通过文本框显示“职工表”中的记录,然后在表单中添加三个命令按钮,按钮标题分别为“上一条”、“下一条”和“退出”,通过前两个按钮来浏览数据表中的记录在文本框中的显示,“退出”按钮的功能时释放表单。






