机密★启用前 |
| 2011年9月全国计算机等级考试二级笔试试题 |
| Visual FoxPro数据库程序设计 |
| (考试时间90分钟,满分100分) |
|
一、选择题(每个小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
|
| (1)下列叙述中正确的是 |
| A)算法就是程序 |
| B)设计算法时只需要考虑数据结构的设计 |
| C)设计算法时只需要考虑结果的可靠性 |
| D)以上三种说法都不对 |
|
|
|
|
|
|
| (2)下列关于线性链表的叙述中,正确的是 |
| A)各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致 |
| B)各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续 |
| C)进行插入与删除时,不需要移动表中的元素 |
| D)以上三种说法都不对 |
|
|
|
|
|
|
| (3)下列关于二叉树的叙述中,正确的是 |
| A)叶子结点总是比度为2的结点少一个 |
| B)叶子结点总是比度为2的结点多一个 |
| C)叶子结点数是度为2的结点数的两倍 |
| D)度为2的结点数是度为1的结点数的两倍 |
|
|
|
|
|
|
| (4)软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是 |
| A)学生成绩管理系统 | B)C语言编译程序 |
| C)UNIX操作系统 | D)数据库管理系统 |
|
|
|
|
|
|
|
| (5)某系统总体结构图如下图所示: |
 |
| 该系统总体结构图的深度是 |
|
|
|
|
|
|
|
|
| (6)程序调试的任务是 |
| A)设计测试用例 | B)验证程序的正确性 |
| C)发现程序中的错误 | D)诊断和改正程序中的错误 |
|
|
|
|
|
|
|
| (7)下列关于数据库设计的叙述中,正确的是 |
| A)在需求分析阶段建立数据字典 | B)在概念设计阶段建立数据字典 |
| C)在逻辑设计阶段建立数据字典 | D)在物理设计阶段建立数据字典 |
|
|
|
|
|
|
|
| (8)数据库系统的三级模式不包括 |
|
|
|
|
|
|
|
|
| (9)有三个关系R、S和T如下: |
 |
| 则由关系R和S得到关系T的操作是 |
|
|
|
|
|
|
|
|
| (10)下列选项中属于面向对象设计方法主要特征的是 |
|
|
|
|
|
|
|
|
| (11)在创建数据库表结构时,为了同时定义实体完整性可以通过指定哪类索引来实现 |
|
|
|
|
|
|
|
|
| (12)关系运算中选择某些列形成新的关系的运算是 |
|
|
|
|
|
|
|
|
| (13)在数据库中建立索引的目的是 |
| A)节省存储空间 | B)提高查询速度 |
| C)提高查询和更新速度 | D)提高更新速度 |
|
|
|
|
|
|
|
| (14)假设变量a的内容是“计算机软件工程师”,变量b的内容是“数据库管理员”,表达式的结果为“数据库工程师”的是 |
| A)left(b,6)-right(a,6) | B)substr(b,1,3)-substr(a,6,3) |
| C)A和B都是 | D)A和B都不是 |
|
|
|
|
|
|
|
| (15)SQL查询命令的结构是SELECT...FOM...WHERE...GROUP BY ...HAVING...ORDER BY...,其中指定查询条件的短语是 |
| A)SELECT | B)FROM |
C)WHERE | D)ORDER BY |
|
|
|
|
|
|
|
| (16)SQL查询命令的结构是SELECT...FOM...WHERE...GROUP BY ...HAVING...ORDER BY...,其中HAVING必须配合使用的短语是 |
| A)FROM | B)GROUP BY |
C)WHERE | D)ORDER BY |
|
|
|
|
|
|
|
| (17)如果在SQL查询的SELECT短语中使用TOP,则应该配合使用 |
| A)HAVING短语 | B)GROUP BY短语 |
C)WHERE短语 | D)ORDER BY短语 |
|
|
|
|
|
|
|
| (18)删除表s中字段c的SQL命令是 |
| A)ALTER TABLE s DELETE c | B)ALTER TABLE s DROP c |
| C)DELETE TABLE s DELETE c | D)DELETE TABLE s DROP c |
|
|
|
|
|
|
|
| (19)在Visul FoxPro中,如下描述正确的是 |
| A)对表的所有操作,都不需要使用USE命令先打开表 |
| B)所有SQL命令对表的所有操作都不需使用USE命令先打开表 |
| C)部分SQL命令对表的所有操作都不需使用USE命令先打开表 |
| D)传统的FoxPro命令对表的所有操作都不需使用USE命令先打开表 |
|
|
|
|
|
|
| (20)在Visual FoxPro中,如果希望跳出SCAN...ENDSCAN循环体外执行ENDSCAN后面的语句,应使用 |
| A)LOOP语句 | B)EXIT语句 |
C)BREAK语句 | D)RETURN语句 |
|
|
|
|
|
|
|
| (21)在Visual FoxPro中,为了使表具有更多的特性应该使用 |
| A)数据库表 | B)自由表 |
| C)数据库表或自由表 | D)数据库表和自由表 |
|
|
|
|
|
|
|
| (22)在Visual FoxPro中,查询设计器和视图设计器很像,如下描述正确的是 |
| A)使用查询设计器创建的是一个包含SQL SELECT语句的文本文件 |
| B)使用视图设计器创建的是一个包含SQL SELECT语句的文本文件 |
| C)查询和视图有相同的用途 |
| D)查询和视图实际都是一个存储数据的表 |
|
|
|
|
|
|
| (23)使用SQL语句将表s中字段price的值大于30的记录删除,正确的命令是 |
| A)DELETE FROM s FOR price>30 | B)DELETE FROM s WHERE price>30 |
| C)DELETE s FOR price>30 | D)DELETE s WHERE price>30 |
|
|
|
|
|
|
|
| (24)在Visual FoxPro中,使用SEEK命令查找匹配的记录,当查找到匹配的第一条记录后,如果还需要查找下一条匹配的记录,通常使用命令 |
| A)GOTO | B)SKIP |
C)CONTINUE | D)GO |
|
|
|
|
|
|
|
| (25)假设表s中有 10条记录,其中字段b小于20的记录有3条,大于等于20、并且小于等30的记录有3条,大于30的记录有4条,执行下面的程序后,屏幕显示的结果是 |
| SET DELETE ON |
| DELETE FROM s WHERE b BETWEEN 20 AND 30 |
| ?RECCOUNT() |
|
|
|
|
|
|
|
|
| (26)正确的SQL插入命令的语法格式是 |
| A)INSERT IN... VALUES... | B)INSERT TO... VALUES... |
| C)INSERT INTO... VALUES... | D)INSERT ... VALUES... |
|
|
|
|
|
|
|
| (27)建立表单的命令是 |
| A)CREATE FROM | B)CREATE TABLE |
C)NEW FROM | D)NEW TABLE |
|
|
|
|
|
|
|
| (28)假设某个表单中有一个复选框(CheckBox1)和一个命令按钮Command1,如果要在Command1的Click事件代码中取得复选框的值,以判断该复选框是否被用户选择,正确的表达式是 |
| A)This.CheckBox1.Value | B)ThisForm.CheckBox1.Value |
| C)This.CheckBox1.Selected | D)ThisForm.CheckBox1.Selected |
|
|
|
|
|
|
|
| (29)为了使命令按钮在界面运行时显示“运行”,需要设置该命令按钮的哪个属性 |
| A)Text | B)Title |
C)Display | D)Caption |
|
|
|
|
|
|
|
| (30)在Visual FoxPro中,如果在表之间的联系中设置了参照完整性规则,并在删除规则中选择了“级联”,当删除父表中的记录,其结果是 |
| A)只删除父表中的记录,不影响子表 |
| B)任何时候都拒绝删除父表中的记录 |
| C)在删除父表中记录的同时自动删除子表中的所有参照记录 |
| D)若子表中有参照记录,则禁止删除父表中记录 |
|
|
|
|
|
|
| (31)SQL语句中,能够判断“订购日期”字段是否为空值的表达式是 |
| A)订购日期=NULL | B)订购日期=EMPTY |
| C)订购日期 IS NULL | D)订购日期 IS EMPTY |
|
|
|
|
|
|
|
| 第(32)-(35)题使用如下3个表: |
| 商店(商店号,商店名,区域名,经理姓名) |
| 商品(商品号,商品名,单价) |
| 销售(商店号,商品号,销售日期,销售数量) |
|
| (32)查询在“北京”和“上海”区域的商店信息的正确命令是 |
| A)SELECT * FROM 商店 WHERE 区域名='北京' AND 区域名='上海' |
| B)SELECT * FROM 商店 WHERE 区域名='北京' OR 区域名='上海' |
| C)SELECT * FROM 商店 WHERE 区域名='北京' AND '上海' |
| D)SELECT * FROM 商店 WHERE 区域名='北京' OR '上海' |
|
|
|
|
|
|
| (33)查询单价最高的商品销售情况,查询结果包括商品号、商品名、销售日期、销售数量和销售金额。正确命令是 |
| A)SELECT 商品.商品号,商品名,销售日期,销售数量,销售数量*单价 AS 销售金额; |
| FROM 商品 JOIN 销售 ON 商品.商品号=销售.商品号; |
| WHERE 单价=(SELECT MAX(单价) FROM 商品) |
| B)SELECT 商品.商品号,商品名,销售日期,销售数量,销售数量*单价 AS 销售金额; |
| FROM 商品 JOIN 销售 ON 商品.商品号=销售.商品号; |
| WHERE 单价=MAX(单价) |
| C)SELECT 商品.商品号,商品名,销售日期,销售数量,销售数量*单价 AS 销售金额; |
| FROM 商品 JOIN 销售 WHERE 单价=(SELECT MAX(单价) FROM 商品) |
| D)SELECT 商品.商品号,商品名,销售日期,销售数量,销售数量*单价 AS 销售金额; |
| FROM 商品 JOIN 销售 WHERE 单价=MAX(单价) |
|
|
|
|
|
|
| (34)查询商品单价在10到50之间、并且日销售数量高于20的商品名、单价、销售日期和销售数量,查询结果按单价降序。正确命令是 |
| A)SELECT 商品名,单价,销售日期,销售数量 FROM 商品 JOIN 销售; |
| WHERE (单价 BETWEEN 10 AND 50) AND 销售数量>20 ORDER BY 单价 DESC |
| B)SELECT 商品名,单价,销售日期,销售数量 FROM 商品 JOIN 销售; |
| WHERE (单价 BETWEEN 10 AND 50) AND 销售数量>20 ORDER BY 单价 |
| C)SELECT 商品名,单价,销售日期,销售数量 FROM 商品,销售; |
| WHERE (单价 BETWEEN 10 AND 50) AND 销售数量>20; |
| ON 商品.商品号=销售.商品号 ORDER BY 单价 |
| D)SELECT 商品名,单价,销售日期,销售数量 FROM 商品,销售; |
| WHERE (单价 BETWEEN 10 AND 50) AND 销售数量>20; |
| AND 商品.商品号=销售.商品号 ORDER BY 单价 DESC |
|
|
|
|
|
|
| (35)查询销售金额合计超过20000的商店,查询结果包括商店名和销售金额合计。正确命令是 |
| A)SELECT 商店名,SUM(销售数量*单价) AS 销售金额合计; |
| FROM 商店,商品,销售 WHERE 销售金额合计 20000 |
| B)SELECT 商店名,SUM(销售数量*单价) AS 销售金额合计>20000; |
| FROM 商店,商品,销售; |
| WHERE 商品.商品号=销售.商品号 AND 商店.商店号=销售.商店号 |
| C)SELECT 商店名,SUM(销售数量*单价) AS 销售金额合计; |
| FROM 商店,商品,销售; |
| WHERE 商品.商品号=销售.商品号 AND 商店.商店号=销售.商店号; |
| AND SUM(销售数量*单价)>20000 GROUP BY 商店名 |
| D)SELECT 商店名,SUM(销售数量*单价) AS 销售金额合计; |
| FROM 商店,商品,销售; |
| WHERE 商品.商品号=销售.商品号 AND 商店.商店号=销售.商店号; |
| GROUP BY 商店名 HAVING SUM(销售数量*单价)>20000 |
|
|
|
|
|
|
二、填空题(每个小题2分,共30分)
请将每一个空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
|
| (1)数据结构分为线性结构与非线性结构,带链的栈属于 【1】 。 |
|
|
|
|
|
|
| (2)在长度为n的顺序存储的线性表中插入一个元素,最坏情况下需要移动表中 【2】 个元素。 |
|
|
|
|
|
|
| (3)常见的软件开发方法有结构化方法和面向对象方法。对某应用系统经过需求分析建立数据流图(DFD),则应采用 【3】 方法。 |
|
|
|
|
|
|
| (4)数据库系统的核心是 【4】 。 |
|
|
|
|
|
|
| (5)在进行关系数据库的逻辑设计时,E-R图中的属性常被转换为关系中的属性,联系通常被转换为 【5】 。 |
|
|
|
|
|
|
| (6)为了使日期的年份显示4位数字应该使用SET CENTURY 【6】 命令进行设置。 |
|
|
|
|
|
|
| (7)在Visula FoxPro中可以使用命令DIMENSION或 【7】 说明数组变量。 |
|
|
|
|
|
|
| (8)在Visula FoxPro中表达式(1+2^(1+2))/(2+2)的运算结果是 【8】 。 |
|
|
|
|
|
|
| (9)如下程序的运行结果是 【9】 。 |
| CLEAR |
| STORE 100 TO x1,x2 |
| SET UDFPARMS TO VALUE |
| DO p4 WITH x1,(x2) |
| ?x1,x2 |
| *过程p4 |
| PROCEDURE p4 |
| PARAMETERS x1,x2 |
| STORE x1+1 TO x1 |
| STORE x2+1 TO x2 |
| ENDPROC |
|
|
|
|
|
|
| (10)在Visula FoxPro中运行表单的命令是 【10】 。 |
|
|
|
|
|
|
| (11)为了使表单在运行时居中显示,应该将其 【11】 属性设置为逻辑真。 |
|
|
|
|
|
|
| (12)为了在表单运行时能够输入密码应该使用 【12】 控件。 |
|
|
|
|
|
|
| (13)菜单定义文件的扩展名是mnx,菜单程序文件的扩展名是 【13】 。 |
|
|
|
|
|
|
| (14)在Visula FoxPro中创建快速报表时,基本带区包括页标头、细节和 【14】 。 |
|
|
|
|
|
|
| (15)在Visula FoxPro中建立表单应用程序环境时,显示出初始的用户界面之后,需要建立一个事件循环来等待用户的交互动作,完成该功能的命令是 【15】 ,该命令使Visula FoxPro开始处理诸如单击鼠标、键盘输入等用户事件。 |
|
|
|
|
|
|
|
|
|
|
|
|
|