1、国家二级 VF 笔试-试卷 92 及答案解析(总分:102.00,做题时间:90 分钟)一、选择题(总题数:34,分数:70.00)1.选择题()下列各题 A、B、C、D 四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。_2.下列数据结构中,能用二分法进行查找的是( )。(分数:2.00)A.无序线性表B.线性链表C.二叉链表D.顺序存储的有序表3.下列叙述中,不属于设计准则的是( )。(分数:2.00)A.提高模块独立性B.使模块的作用域在该模块的控制域中C.设计成多入口、多出口模块D.设计功能可预测的模块4.下列队列的描述中,正确的是( )。(分数:2.00)A.队列
2、属于非线性表B.队列在队尾删除数据C.队列按“先进后出”进行数据操作D.队列按“先进先出”进行数据操作5.对下列二叉树进行前序遍历的结果为( )。 (分数:2.00)A.ABCDEFGHB.ABDGEHCFC.GDBEHACFD.GDHEBFCA6.对于长度为 n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是 ( )。(分数:2.00)A.冒泡排序为 n(n-1)2B.简单插入排序为 nC.希尔排序为 nD.快速排序为 n27.为了使模块尽可能独立,要求( )。(分数:2.00)A.内聚程度要尽量高,耦合程度要尽量强B.内聚程度要尽量高,耦合程度要尽量弱C.内聚程度要尽量低,
3、耦合程度要尽量弱D.内聚程度要尽量低,耦合程度要尽量强8.下列选项中不属于软件生命周期开发阶段任务的是( )。(分数:2.00)A.软件测试B.概要设计C.软件维护D.详细设计9.数据独立性是数据库技术的重要特点之一。所谓数据独立性是指( )。(分数:2.00)A.数据与程序独立存放B.不同的数据被存放在不同的文件中C.不同的数据只能被对应的应用程序所使用D.以上三种说法都不对10.在学校中,“班级”与“学生”两个实体集之间的联系属于( )关系。(分数:2.00)A.一对一B.一对多C.多对一D.多对多11.软件调试的目的是( )。(分数:2.00)A.发现错误B.改善软件的性能C.改正错误D
4、.验证软件的正确性12.在关系模型中,每个关系模式中的关键字()。(分数:2.00)A.可由多个任意属性组成B.最多由一个属性组成C.可由一个或多个其值能惟一标识关系中任何元组的属性组成D.以上说法都不对13.下列函数中函数值为数值型的是( )。(分数:2.00)A.YEAR()B.DATE()C.TIME()D.DATETIME()14.在 SQL 语句中,与表达式“供应商名 LIKE“北京”功能相同的表达式是( )。(分数:2.00)A.LEFT(供应商名,4):“北京”B.“北京”$供应商名C.供应商名 IN“北京”D.AT(供应商名,“北京”)15.执行下列程序: AA=0 FORI=
5、2 TO 100 STEP2 AA=AA+I ENDFOR ?AA RETURN 该程序得到的结果为( )。(分数:2.00)A.1100 中奇数的和B.1100 中偶数的和C.1100 中所有数的和D.没有意义16.函数 LOWER(“NCRE123”)的值是( )。(分数:2.00)A.NCRE123B.NCREC.ncre123D.ncre17.查询设计器中包括的选项卡有( )。(分数:2.00)A.联接、显示、排序依据B.更新条件、排序依据、显示C.筛选、排序依据、分组依据D.更新条件、筛选、联接18.在 VisualFoxpro 中,关于视图的正确叙述是( )。(分数:2.00)A.
6、视图不能同数据库表进行连接操作B.视图是从一个或多个数据库表导出的虚拟表C.视图与数据库表相同,用来存储数据D.在视图上不能进行更新操作19.在表单设计中,ThisformSet 关键字的含义是指( )。(分数:2.00)A.当前对象的直接容器对象B.当前对象所在的表单C.当前对象D.当前对象所在的表单集20.在学生表中共有 100 条记录,执行如下命令,执行结果将是( ) INDEX ON-总分 TO ZF SET INDEX TO ZF GO TOP DISPLAY(分数:2.00)A.显示的记录号是 1B.显示分数最高的记录号C.显示的记录号是 100D.显示分数最低的记录号21.SQL
7、 语言的插入命令的关键词是( )。(分数:2.00)A.INSERTB.UPDATEC.CREATED.SELECT22.如果学生表 student 是使用下面的 SQL 语句创建的 CREATE TABLE student(学号 C(4)PRIMARY KEY NOT NULL,; 姓名 C(8),; 性别 C(2),; 年龄 N(2)CHECK(年龄15 AND 年龄A.INSERT INTO student(学号,性别,年龄)VALUES(“0542”,“男”,17)B.INSERT INTO student(姓名,性别,年龄 VALUES(“李蕾”,“女”,20)C.INSERT IN
8、TO student(姓名,性别,年龄)VALUES(“男”,25)D.INSERT INTO student(学号,姓名)VALUES(“0897”,“安宁”,16)23.建立一个视图 salary,该视图包括了系号和(该系的)平均工资两个字段,正确的 SQL 语句是( )。(分数:2.00)A.CREATE VIEw salary AS 系号,AVG(工资)AS 平均工资 FROM 教师; GROUPBY 系号B.CREATEVIEW salaryAS SELECT 系号,AVG(m 资)AS 平均工资 FROM 教师; GROUPBY 系名C.CREATE VEW Salary SELE
9、CT 系号,AVG(工资)AS 平均工资 FROM 教师; GROUPBY 系号D.CREATE VIEW salaryAS SELECT 系号,AVG(工资)AS 平均工资 FROM 教师; GROUPBY 系号24.设在表单有一个页框,页框包含两个页面 Page1 和 Page2。假设 Page2 没有设置 Click 事件代码,而Page1 及页框和表单都设置了 Click 事件代码。那么当表单运行时,如果单击 Page2,系统将( )。(分数:2.00)A.执行表单的 Click 事件代码B.执行页框的 Click 事件代码C.执行页框的 Pagel 的 Click 事件代码D.不会有
10、任何反应25.如果文本框的 INPUTMASK 属性值是#X9999,允许在文本框中输入的是( )。(分数:2.00)A.$12345B.12345C.abcdefD.abc12326.如果添加到项目中的文件标识为“排除”,表示( )。(分数:2.00)A.此类文件不是应用程序的一部分B.生成应用程序时包括此类文件,用户可以修改C.生成应用程序时不包括此类文件D.生成应用程序时包括此类文件,用户不能修改27.作为整个应用程序入口点的主程序至少应具有以下功能( )。(分数:2.00)A.初始化环境B.初始化环境、显示初始用户界面C.初始化环境、显示初始用户界面、控制事件循环D.初始化环境、显示初
11、始的用户界面、控制事件循环、退出时恢复环境28.利用 SQL 命令删除“学生”表中的“年龄”字段,正确的命令格式是( )。(分数:2.00)A.ALTER TABLE 学生 DELETE COLUMN 年龄B.ALTER TABLE 学生 DROP COLUMN 年龄C.ALTERTABLE 学生 CANCEL COmJMN 年龄D.ALTER TABLE 学生 CUT COLUMN 年龄29.要将组合框设置成允许编辑,应进行设置的属性是( )。(分数:2.00)A.StyleB.ControlSourceC.EnabledD.Value30.Visual FoxPro 中 APPEND BL
12、ANK 命令的作用是( )。(分数:2.00)A.在表的尾部添加记录B.在当前记录之前插入新记录C.在表的任意位置添加记录D.再表的首行添加记录31.下面的 SQL 语句能实现的功能是( )。 SELECT*FROM 学生 WHERE 班级号=“0801”; UNION; SELECT*FROM 学生 WHERE 班级号=“0802”(分数:2.00)A.查询在 0801 班或 0802 班的学生信息B.查询 0801 班或 0802 班的班级信息C.查询既在 0801 班又在 0802 班的学生信息D.语句错误,不能执行32.下列有关 SQL 内外层互相关嵌套查询叙述正确的是( )。(分数:
13、2.00)A.外层查询依赖于内层查询的结果,而内层查询与外层查询无关B.内层查询依赖于外层查询的结果,而外层查询与内层查询无关C.外层查询的条件需要内层查询提供值,而内层查询的条件需要外层查询的结果D.内层查询的条件需要外层查询提供值,而外层查询的条件需要内层查询的结果33.设有“职工”表,表结构如下: 职工(部门号 C(2)、职工号 C(4)、姓名 C(8)、年龄 N(2)、工资N(7,2) 检索最少有 3 名职工的每个部门的职工工资的总额( )。(分数:2.00)A.SELECT 部门号,COUNT(*),SUM(工资)FROM 职工; HAVING COUNT(*)=3B.SELECT
14、部门号,COUNT(*),SUM(工资)FROM 职工; GROUP BY 基本工资 HAVING COUNT(*)=3C.SELECT 部门号,COUNT(*),SUM(工资)FROM 职工; GROUPBY 部门号 HAVINGCOUNT(*)=3D.SELECT 部门号,COUNT(*),SUM(工资)FROM 职工; GROUP BY 部门号 WHERE COUNT(*)=3下表是用 list 命令显示的“运动员”表的内容和结构,下面三个题使用该表。 记录号 运动员号 投中 2分球 投中 3 分球 罚球 1 1 3 4 5 2 2 2 1 3 3 3 0 0 0 4 4 5 6 7(分
15、数:6.00)(1).为“运动员”表增加一个字段“得分”的 SQL 语句是( )。(分数:2.00)A.CHANGETABLE 运动员 ADD 得分 1B.ALTER DATA 运动员 ADD 得分 1C.ALTER TABLE 运动员 ADD 得分 1D.CHANGE TABLE 运动员 INSERT 得分 1(2).计算每名运动员的“得分”(33 题增加的字段)的 SQL 语句正确的是( )。(分数:2.00)A.UPDATE 运动员 FIELD 得分=2*投中 2 分球+3*投中 3 分球+罚球B.UPDATE 运动员 FIELD 得分 WTTH 2*投中 2 分球+3*投中 3 分球+
16、罚球C.UPDATE 运动员 SET 得分 WTTH 2*投中 2 分球+3*投中 3 分球+罚球D.UPDATE 运动员 SET 得分=2*投中 2 分球+3*投中 3 分球+罚球(3).检索“投中 3 分球”小于等于 5 个的运动员中“得分”最高的运动员的“得分”,正确的 SQL 语句是( )。(分数:2.00)A.SELECT MAX(得分)FROM 运动员 WHERE 投中 3 分球15 AND 年龄A.INSERT INTO student(学号,性别,年龄)VALUES(“0542”,“男”,17) B.INSERT INTO student(姓名,性别,年龄 VALUES(“李蕾
17、”,“女”,20)C.INSERT INTO student(姓名,性别,年龄)VALUES(“男”,25)D.INSERT INTO student(学号,姓名)VALUES(“0897”,“安宁”,16)解析:解析:由于“学号”是主关键字,不可以为空,因此是必填字段,在用 INSERT 插入记录时,学号字段的值不可省,故选项 B 和选项 C 不正确,在用 INSERT 插入记录时,初值的个数必须和字段个数相等,故选项 D 不正确。 PRIMARY KEY NOT NULL 用来定义学号为主关键字,并且不可为 NULL 值,CHECK(AGE15AND AGE=3B.SELECT 部门号,C
18、OUNT(*),SUM(工资)FROM 职工; GROUP BY 基本工资 HAVING COUNT(*)=3C.SELECT 部门号,COUNT(*),SUM(工资)FROM 职工; GROUPBY 部门号 HAVINGCOUNT(*)=3 D.SELECT 部门号,COUNT(*),SUM(工资)FROM 职工; GROUP BY 部门号 WHERE COUNT(*)=3解析:解析:根据题意,本题应按照“部门号”分组,COUNT(*=3 为限定分组的条件。在 SQL 语句中,分组使用 GROUPBY 子句,HAVING 子句用来限定分组的条件。SUM()函数用来求和,COUNT()函数用来
19、计数。下表是用 list 命令显示的“运动员”表的内容和结构,下面三个题使用该表。 记录号 运动员号 投中 2分球 投中 3 分球 罚球 1 1 3 4 5 2 2 2 1 3 3 3 0 0 0 4 4 5 6 7(分数:6.00)(1).为“运动员”表增加一个字段“得分”的 SQL 语句是( )。(分数:2.00)A.CHANGETABLE 运动员 ADD 得分 1B.ALTER DATA 运动员 ADD 得分 1C.ALTER TABLE 运动员 ADD 得分 1 D.CHANGE TABLE 运动员 INSERT 得分 1解析:解析:用 SQL 命令可以对基本表的结构进行修改,利用以下
20、命令可以为表建立新的字段: ALTERTABLE ADDCOLMN(,(2).计算每名运动员的“得分”(33 题增加的字段)的 SQL 语句正确的是( )。(分数:2.00)A.UPDATE 运动员 FIELD 得分=2*投中 2 分球+3*投中 3 分球+罚球B.UPDATE 运动员 FIELD 得分 WTTH 2*投中 2 分球+3*投中 3 分球+罚球C.UPDATE 运动员 SET 得分 WTTH 2*投中 2 分球+3*投中 3 分球+罚球D.UPDATE 运动员 SET 得分=2*投中 2 分球+3*投中 3 分球+罚球 解析:解析:SQL 的数据更新命令格式: UPDATESET
21、 列名 1=表达式 1,列名 2=表达式 2 WHERE1 一般使用 WHERE 子句指定条件,以更新满足条件的一些记录的字段值,并且一次可以更新多个字段;如果不使用 WHEIZE 子句,则更新全部记录。(3).检索“投中 3 分球”小于等于 5 个的运动员中“得分”最高的运动员的“得分”,正确的 SQL 语句是( )。(分数:2.00)A.SELECT MAX(得分)FROM 运动员 WHERE 投中 3 分球=5 B.SELECTMAX(得分)FROM 运动员 WHEN 投中 3 分球=5C.SELECT 得分 MAX(得分)FROM 运动员 WHERE 投中 3 分球=5D.SELECT
22、 得分 MAX(得分)FROM 运动员 WHEN 投中 3 分球=5解析:解析:求最大值的函数是 MAX(),使用计算函数后,会改变原来的用于计算的字段名,如果要指定新的字段名,可以在该计算函数后通过 AS 短语指定新的字段名,也可以省略 AS 短语直接输入新字段名做为输出显示的字段名称。 本题选项 C 和 D 中,使用计算函数的表达方式错误;而选项 B 中,条件短语的关键字出错,应该是 WHERE,而不是 WHEN。二、填空题(总题数:16,分数:32.00)34.填空题(每空)请将每一个空的正确答案写在答题卡上。注意:以命令关键字填空的必须拼写完整。(分数:2.00)_解析:35.算法的基
23、本特征主要包括四个方面,它们分别是可行性、确定性、 1 和拥有足够的情报。(分数:2.00)填空项 1:_ (正确答案:正确答案:有穷性)解析:解析:算法的基本特征主要包括以下四个方面: 可行性:针对实际问题而设计的算法,执行后能够得到满意的结果。 ? 确定性:算法中的每一个步骤都必须有明确的定义,不允许有模棱两可的解释和多义性。 ? 有穷性:算法必需在有限时间内做完,即算法必需能在执行有限个步骤之后终止。 ? 拥有足够的情报:要使算法有效必需为算法提供足够的情报,当算法拥有足够的情报时,此算法才最有效的;而当提供的情报不够时,算法可能无效。36.在长度为 n 的有序线性表中进行二分查找,、最
24、坏的情况下,需要的比较次数为 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:log 2 n)解析:解析:对于长度为 n 的有序线性表,在最坏情况下,二分法查找只需比较 log 2 n 次,而顺序查找需要比较 n 次。需要注意的是当有序线表为顺序存储时才能使用二分查找。37.在面向对象方法中, 1 是具有相似性质的对象的集合。(分数:2.00)填空项 1:_ (正确答案:正确答案:类)解析:解析:将属性、操作相似的对象归为类,也就是说,类是具有共同属性、共同操作性质的对象的集合,是已经定义了的关于对象的特征、外观和行为的模板。所以类是对象的抽象,它描述了属于该对象类型的所有对象的性
25、质,而一个对象则是其对应类的一个实例。38.软件产品从提出、实现、使用维护到停止使用退役的过程称为 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:软件生命周期)解析:解析:软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。 在国家标准“计算机软件开发规范”中,把软件生命周期划分为 8 个阶段,即可行性研究与计划、需求分析、概要设计、详细设计、实现、综合测试、确认测试、使用与维护,对每个阶段,都明确规定了该阶段的任务、实施方法、实施步骤和完成标志,其中特别规定了每个阶段需要产生的文档。39.在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。常见
26、的数据模型有 3种,它们分别是层次模型、网状模型和 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:关系模型)解析:解析:在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。通俗地讲,数据模型就是现实世界的反映,它分为两个阶段:把现实世界中的客观对象抽象为概念模型;把概念模型转换为某一 DBMs 支持的数据模型。常见的数据模型有 3 种,它们分别是层次模型、网状模型和关系模型。40.VisualFoxPro 60 的项目文件的扩展名是 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:PJX)解析:解析:Visual FoxPro 的项目文件的扩展名是P
27、JX。41.执行?AT(“xy=z”,“z”)语句后,屏幕显示的结果为 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:0)解析:解析:AT()函数的格式是: AT(,),功能是:如果是的子串,则返回值的首字符在中的位置;若不是子串,则返回 0。函数返回值为数值型。 题干中为“xy=z”,为“z”,很明显不是的子串,所以返回 0。42.执行以下程序,然后输入“123456”,则程序的输出结果是 1。 ACCEPTTOA IF A=123456 S=0 ENDIF S=1 ?S RETURN(分数:2.00)填空项 1:_ (正确答案:正确答案:1)解析:解析:ACCEPT 命令的功
28、能是等待用户从键盘输入字符串。当用户以回车键结束输入时,系统将该字符串存入指定的内存变量,然后继续往下执行程序。 按照顺序执行的原则无论是否执行 IF 语句,语句S=1 赋值语句都会执行。所以本程序段最终输出 1。43.在程序中不需要命令明确声明和建立:可以直接使用的内存变量是 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:私有变量)解析:解析:在 Visual FoxPro 中,根据变量的作用域来分,内存变量可分为私有变量、局部变量和全局变量。全局变量是指在任何模块中都可使用的变量;私有变量是在程序中直接使用(没有通过 PUBLIC 和LOCAL 命令事先声明)而由系统自动隐含
29、建立的变量,其作用域是建立变量的模块及其下属的各层模块;局部变量只能在建立它的模块中使用,不能在上层或下层模块中使用。44.在 Visual FoxPro 中,删除记录有两种类型,它们是逻辑删除和 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:物理删除)解析:解析:删除记录有两种类型,逻辑删除和物理删除。逻辑删除只是给记录加上删除标记,物理删除才是把记录从磁盘上彻底删除。45.数据完整性一般包括实体完整性、域完整性和 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:参照完整性)解析:解析:数据完整性包括实体完整性、域完整性和参照完整性。实体完整性是保证表中记录惟一的特
30、性,利用主关键字或候选关键字来实现。域完整性也称为字段有效性规则,在插入或修改字段值时被激活,主要用于数据输入正确性的检验,可以限定字段取值类型和取值范围。参照完整性与表之间的关联有关,它的含义是:当插入、删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,来检查对表的数据操作是否正确。46.用 SQL 语句实现将“职工”表中所有职工的奖金提高 5:UPDATE 职工 1 奖金=奖金*105(分数:2.00)填空项 1:_ (正确答案:正确答案:SET)解析:解析:SQL 中修改记录的命令格式如下: UPDATE 表名: SET 字段 1=表达式 1,字段表达式 2;WHERE
31、 条件表达式 WHERE 条件表达式指定要更新的记录所符合的条件。如果省略了 WHERE 子句,则列中的每行都将用相同的值进行更新。47.设有“职工”表文件,在“职工”表中查找“基本工资”最低的职工的姓名,完成下列 SQL 语句。 SELECT 姓名 FROM 职工; WHERE 基本工资= 1; (SELECT 基本工资 FROM 职工)(分数:2.00)填空项 1:_ (正确答案:正确答案:ALL)解析:解析:SQL 语句中可以利用 ANY、ALL 等量词进行查询。ANY、ALL 和 SOME 是量词,其中 ANY 和SOME 是同义词,在进行比较运算时只要子查询中有一行能使结果为真,则结
32、果为真;而 ALL 则要求子查询中的所有行都使结果为真时,结果才为真。48.检索“职工”表中,“籍贯”为“湖南”的学生记录,将结果保存到 temp 表中,SQL 语句为: SELECT*FROM 职工 WHERE 籍贯=“湖南” 1temp(分数:2.00)填空项 1:_ (正确答案:正确答案:INTO TABLE 或 INTO DBF)解析:解析:SOL 查询结果可以保存在永久性表中,使用 INTO TABLE 或 INTODBF 短语。49.在 Visual FoxPro 中,使用 SQL 的 CREATE TABLE 语句建立数据库表时,使用 1 子句说明候选索引。(分数:2.00)填空项 1:_ (正确答案:正确答案:UNIQUE)解析:解析:在 SOL 的 CPEATE TABLE 语句建立数据库表时,用 LYNIQUE 说明候选索引。