机密★启用前
2007 年 9 月全国计算机等级考试二级笔试试卷
Visual FoxPro 数据库程序设计
27
注意事项
一、考生应严格遵守考场规则,得到监考人员指令后方可作答。
二、考生拿到试卷后应首先将自己的姓名、准考证号等内容涂写在答题卡的相应位置上。
三、选择题答案必须用铅笔填涂在答题卡的相应位置上,填空题的答案必须用蓝、黑色钢笔或圆珠笔写在答题卡的相应位置上,答案写在试卷上无效。
四、注意字迹清楚,保持卷面整洁。
五、考试结束将试卷和答题卡放在桌上,不得带走。待监考人员收毕清点后,方可离场。
* * * 版权所有,任何单位或个人不得保留、复制和出版,违者必究 * * *
教育部考试中心
二 00 七年七月制
二级Visual FoxPro数据库设计试卷 第1页 (共6页)
全国计算机等级考试二级Visual FoxPro数据库设计
2007年9月笔试试卷
(考试时间90分钟,满分100分)
一、选择题(每小题 2分,共 70分)
(1)软件是指( )。
A)程序
B)程序和文档
C)算法加数据结构
D)程序、数据与相关文档的完整集合
(2)软件调试的目的是( )。
A)发现错误
B)改正错误
C)改善软件的性能
D)验证软件的正确性
(3)在面向对象方法中,实现信息隐蔽是依靠( )。
A)对象的继承
B)对象的多态
C)对象的封装
D)对象的分类
(4)下列描述中,不符合良好程序设计风格要求的是( )。
A)程序的效率第一,清晰第二
B)程序的可读性好
C)程序中要有必要的注释
D)输入数据前要有提示信息
(5)下列描述中正确的是( )。
A)程序执行的效率与数据的存储结构密切相关
B)程序执行的效率只取决于程序的控制结构
C)程序执行的效率只取决于所处理的数据量
D)以上三种说法都不对
(6)下列描述中正确的是( )。
A)数据的逻辑结构与存储结构必定是一一对应的
B)由于计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线性结构
C)程序设计语言中的数据一般是顺序存储结构,因此,利用数组只能处理线性结构
D)以上三种说法都不对
(7)冒泡排序在最坏情况下的比较次数是( )。
A)n(n+1)/2
B)nlog2n
C)n(n-1)/2
D)n/2
二级Visual FoxPro数据库设计试卷 第2页 (共6页)
(8)一棵二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为
( )。
A)219
B)221
C)229
D)231
(9)下列描述中正确的是( )。
A)数据库系统是一个独立的系统,不需要操作系统的支持
B)数据库技术的根本目标是要解决数据的共享问题
C)数据库管理系统就是数据库系统
D)以上三种说法都不对
(10)下列描述中正确的是( )。
A)为了建立一个关系,首先要构造数据的逻辑关系
B)表示关系的二维表中各元组的每一个分量还可以分成若干数据项
C)一个关系的属性名表称为关系模式
D)一个关系可以包括多个二维表
(11)在Visual FoxPro中,通常以窗口形式出现,用以创建和修改表、表单、数据库等应用程序组件的可视化工具称为( )。
A)向导
B)设计器
C)生成器
D)项目管理器
(12)命令?VARTYPE(TIME())的结果是( )。
A)C
B)D
C)T
D)出错
(13)命令?LEN(SPACE(3)-SPACE(2))的结果是( )。
A)1
B)2
C)3
D)5
(14)在Visual FoxPro中,菜单程序文件的默认扩展名是( )。
A).mnx
B).mnt
C).mpr
D).prg
(15)要想将日期型或日期时间型数据中的年份用4位数字显示,应当使用设置命令( )。
A)SET CENTURY ON
B)SET CENTURY OFF
C)SET CENTURY TO 4
D)SET CENTURY OF 4
(16)已知表中有字符型字段“职称”和“性别”,要建立一个索引,要求首先按“职称”
排序,“职称”相同时再按“性别”排序,正确的命令是( )。
二级Visual FoxPro数据库设计试卷 第3页 (共6页)
A)INDEX ON 职称+性别 TO ttt
B)INDEX ON 性别+职称TO ttt
C)INDEX ON 职称,性别 TO ttt
D)INDEX ON 性别,职称TO ttt
(17)在Visual FoxPro中,UnLoad事件的触发时机是( )。
A)释放表单
B)打开表单
C)创建表单
D)运行表单
(18)命令“SELECT 0”的功能是( )。
A)选择编号最小的未使用工作区
B)选择0号工作区
C)关闭当前工作区中的表
D)选择当前工作区
(19)下列关于数据库表和自由表的描述中错误的是( )。
A)数据库表和自由表都可以用表设计器来建立
B)数据库表和自由表都支持表间联系和参照完整性
C)自由表可以添加到数据库中成为数据库表
D)数据库表可以从数据库中移出成为自由表
(20)下列关于ZAP命令的描述中正确的是( )。
A)ZAP命令只能删除当前表的当前记录
B)ZAP命令只能删除当前表的带有删除标记的记录
C)ZAP命令能删除当前表的全部记录
D)ZAP命令能删除表的结构和全部记录
(21)在视图设计器中有,而在查询设计器中没有的选项卡是( )。
A)排序依据
B)更新条件
C)分组依据
D)杂项
(22)在使用查询设计器创建查询时,为了指定在查询结果中是否包含重复记录(对应于DISTINCT),
应该使用的选项卡是( )。
A)排序依据
B)联接
C)筛选
D)杂项
(23)在Visual FoxPro中,过程的返回语句是( )。
A)GOBACK
B)COMEBACK
C)RETURN
D)BACK
(24)在数据库表上的字段有效性规则是( )。
A)逻辑表达式
B)字符表达式
C)数字表达式
二级Visual FoxPro数据库设计试卷 第4页 (共6页)
D)以上三种都有可能
(25)假设在表单设计器环境下,表单中有一个文本框,且已经被选定为当前对象,现在从属性窗口中选择Value属性,然后在设置框中输入“={^2001-9-10}-{^2001-8-20}”,
请问以上操作后,文本框Value属性值的数据类型是( )。
A)日期型
B)数值型
C)字符型
D)以上操作出错
(26)在SQL SELECT语句中,为了将查询结果存储到临时表,应该使用短语( )。
A)TO CURSOR
B)INTO CURSOR
C)INTO DBF
D)TO DBF
(27)在表单设计中,经常会用到一些特定的关键字、属性和事件,下列各项中属于属性的是( )。
A)This
B)Thisform
C)Caption
D)Click
(28)下面程序计算一个整数的各位数字之和,在下划线处应填写的语句是( )。
SET TALK OFF
INPUT "x=" TO x
s=0
DO WHILE x!=0
s=s+MOD(x,10)
___
ENDDO
?s
SET TALK ON
A)x=int(x/10)
B)x=int(x%10)
C)x=x-int(x/10)
D)x=x-int(x%10)
(29)在SQL的ALTER TABLE语句中,为了增加一个新的字段应该使用短语( )。
A)CREATE
B)APPEND
C)COLUMN
D)ADD
(30)~(35)题使用如下数据表,
学生.DBF:学号(C,8),姓名(C,6),性别(C,2),出生日期(D)
选课.DBF:学号(C,8),课程号(C,3),成绩(N,5,1)
(30)查询所有1982年3月20日以后(含)出生、性别为男的学生,正确的SQL语句是( )。
A)SELECT * FROM 学生 WHERE 出生日期>={^1982-03-20}AND 性别="男"
B)SELECT * FROM 学生 WHERE 出生日期<={^1982-03-20}AND 性别="男"
二级Visual FoxPro数据库设计试卷 第5页 (共6页)
C)SELECT * FROM 学生 WHERE 出生日期>={^1982-03-20}OR 性别="男"
D)SELECT * FROM 学生 WHERE 出生日期<={^1982-03-20}OR 性别="男"
(31)计算刘明同学选修的所有课程的平均成绩,正确的SQL语句是( )。
A)SELECT AVG(成绩) FROM 选课 WHERE 姓名="刘明"
B)SELECT AVG(成绩) FROM 学生,选课 WHERE 姓名="刘明"
C)SELECT AVG(成绩) FROM 学生,选课 WHERE 学生.姓名="刘明"
D)SELECT AVG(成绩) FROM 学生,选课 WHERE学生.学号=选课.学号 AND 姓名
="刘明"
(32)假定学号的第3、4位为专业代码,要计算各专业学生选修课程号为“101”课程的平均成绩,正确的SQL语句是( )。
A)SELECT 专业 AS SUBS(学号,3,2),平均分 AS AVG(成绩) FROM 选课;
WHERE 课程号="101" GROUP BY 专业
B)SELECT SUBS(学号,3,2) AS 专业,AVG(成绩) AS 平均分 FROM 选课;
WHERE 课程号="101" GROUP BY 1
C)SELECT SUBS(学号,3,2) AS 专业,AVG(成绩) AS 平均分 FROM 选课;
WHERE 课程号="101" ORDER BY 专业
D)SELECT 专业 AS SUBS(学号,3,2),平均分 AS AVG(成绩) FROM 选课;
WHERE 课程号="101" ORDER BY 1
(33)查询选修课程号为“101”的课程得分最高的同学,正确的SQL语句是( )。
A)SELECT 学生.学号,姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号;
AND 课程号="101" AND 成绩>=ALL(SELECT成绩FROM选课)
B)SELECT 学生.学号,姓名 FROM 学生,选课 WHERE学生.学号=选课.学号;
AND 成绩>=ALL(SELECT 成绩 FROM 选课 WHERE 课程号="101")
C)SELECT 学生.学号,姓名 FROM 学生,选课 WHERE 学生.学号=选课.学号;
AND 成绩>=ALL(SELECT 成绩 FROM 选课 WHERE 课程号="101")
D)SELECT 学生.学号,姓名FROM学生,选课 WHERE 学生.学号=选课.学号 AND;
课程号="101" AND 成绩>=ALL(SELECT 成绩 FROM 选课 WHERE 课程号
="101")
(34)插入一条记录到“选课”表中,学号、课程号和成绩分别是“02080111”、“103”
和80,正确的SQL语句是( )。
A)INSERT INTO 选课 VALUES("02080111","103",80)
B)INSERT VALUES("02080111","103",80) TO 选课(学号,课程号,成绩)
C)INSERT VALUES("02080111","103",80) INTO 选课(学号,课程号,成绩)
D)INSERT INTO选课(学号,课程号,成绩) FROM VALUES("02080111","103",
80)
(35)将学号为“02080110”、课程号为“102”的选课记录的成绩改为92,正确的SQL
语句是( )。
A)UPDATE 选课 SET 成绩 WITH 92 WHERE 学号="02080110" AND 课程号 "102"
B)UPDATE 选课 SET 成绩=92 WHERE 学号="02080110" AND 课程号="102"
C)UPDATE FROM 选课 SET 成绩 WITH 92 WHERE 学号="02080110"AND 课程号="102"
D)UPDATE FROM 选课 SET 成绩=92 WHERE 学号="02080110" AND 课程号
="102"
二、填空题(每空 2分,共 30分)
(1)软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,
二级Visual FoxPro数据库设计试卷 第6页 (共6页)
其中最重要的是 【1】 。
(2)在两种基本测试方法中,【2】 测试的原则之一是保证所测模块中每一个独立路径至少要执行一次。
(3)线性表的存储结构主要分为顺序存储结构和链式存储结构。队列是一种特殊的线性表,
循环队列是队列的 【3】 存储结构。
(4)对下列二叉树进行中序遍历的结果是 【4】 。
(5)在E-R图中,矩形表示 【5】 。
(6)下列命令查询雇员表中“部门号”字段为空值的记录,
SELECT * FROM雇员WHERE部门号 【6】
(7)在SQL的SELECT查询中,HAVING子句不可以单独使用,总是跟在 【7】 子句之后一起使用。
(8)在SQL的SELECT查询时,使用 【8】 子句实现消除查询结果中的重复记录。
(9)在Visual FoxPro中修改表结构的非SQL命令是 【9】 。
(10)在Visual FoxPro中,在运行表单时最先引发的表单事件是 【10】 事件。
(11)在Visual FoxPro中,使用LOCATE ALL命令按条件对表中的记录进行查找,若查不到记录,函数EOF()的返回值应是 【11】 。
(12)在Visual FoxPro表单中,当用户使用鼠标单击命令按钮时,会触发命令按钮的
【12】 事件。
(13)在Visual FoxPro中,假设表单上有一选项组:⊙男○女,该选项组的Value属性值赋为0。当其中的第一个选项按钮“男”被选中,该选项组的Value属性值为 【13】 。
(14)在Visual FoxPro表单中,用来确定复选框是否被选中的属性是 【14】 。
(15)在SQL中,插入、删除、更新命令依次是INSERT、DELETE和 【15】 。
F
C
A D
P
E
B
G
H