1、2009 年 3月国家二级( VISUALFOXPRO)笔试真题试卷及答案与解析 1 下列叙述中正确的是 _。 ( A)栈是 “先进先出 ”的线性表 ( B)队列是 “先进后出 ”的线性表 ( C)循环队列是非线性结构 ( D)有序线性表既可以采用顺序存储结构,也可以采用链式存储结构 2 支持子程序调用的数据结构是 _。 ( A)栈 ( B)树 ( C)队列 ( D)二叉树 3 某二叉树有 5个度为 2的结点,则该二叉树中的叶子结点数是 _。 ( A) 10 ( B) 8 ( C) 6 ( D) 4 4 下列排序方法中,最坏情况下比较次数最少的是 _。 ( A)冒泡排序 ( B)简单选择排序
2、( C)直接插入排序 ( D)堆排序 5 软件按功能可以分为:应用软件、系统软件和支撑软件 (或工具软件 )。下面属于应用软件的是 _。 ( A)编译程序 ( B)操作系统 ( C)教务管理系统 ( D)汇编程序 6 下面叙述中错误的是 _。 ( A)软件测试的目的是发现错误并改正错误 ( B)对被调试的程序进行 “错误定位 ”是程序调试的必要步骤 ( C)程序调试通常也 称为 Debug ( D)软件测试应严格执行测试计划,排除测试的随意性 7 耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是 _。 ( A)提高耦合性降低内聚性有利于提高模块的独立性 ( B)降低耦合性提高内聚
3、性有利于提高模块的独立性 ( C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度 ( D)内聚性是指模块间互相连接的紧密程度 8 数据库应用系统中的核心问题是 _。 ( A)数据库设计 ( B)数据库系统设计 ( C)数据库维护 ( D)数据库管理员培训 9 有两个关系 R, S如下:由关系 R通过运算得到关系 S,则所使用的运算为 _。 ( A)选择 ( B)投影 ( C)插入 ( D)连接 10 将 E-R图转换为关系模式时,实体和联系都可以表示为 _。 ( A)属性 ( B)键 ( C)关系 ( D)域 11 数据库 (DB) 、数据库系统 (DBS)和数据库管理系统 (DBMS)三
4、者之间的关系是 _。 ( A) DBS包括 DB和 DBMS ( B) DBMS包括 DB和 DBS ( C) DB包括 DBS和 DBMS ( D) DBS就是 DB,也就是 DBMS 12 SQL语言的查询语句是 _。 ( A) INSERT ( B) UPDATE ( C) DELETE ( D) SELECT 13 下列与修改表结构相关的命令是 _。 ( A) INSERT ( B) ALTER ( C) UPDATE ( D) CREATE 14 对表 SC(学号 C(8),课程号 C(2),成绩 N(3),备注 C(20),可以插入的记录是 _。 ( A) (20080101,cl
5、,90,NULL) ( B) (20080101,c1,90,成绩优秀 ) ( C) (20080101,c1,90,成绩优秀 ) ( D) (20080101,c1,79,成绩优秀 ) 15 在表单中为表格控件指定数据源的属性是 _。 ( A) DataSource ( B) DataFrom ( C) RecordSource ( D) RecordFrom 16 在 Visual FoxPro中,下列关于 SQL表定义语句 (CREATE TABLE)的说法中错误的是 _。 ( A)可以定义一个新的基本表结 构 ( B)可以定义表中的主关键字 ( C)可以定义表的域完整性、字段有效性规则
6、等 ( D)对自由表,同样可以实现其完整性、有效性规则等信息的设置 17 在 Visual FoxPro中,若所建立索引的字段值不允许重复,并且一个表中只能创建一个,这种索引应该是 _。 ( A)主索引 ( B)唯一索引 ( C)候选索引 ( D)普通索引 18 在 Visual FoxPro中,用于建立或修改程序文件的命令是 _。 ( A) MODIFY文件名 ( B) MODIFY COMMAND文 件名 ( C) MODIFY PROCEDURE文件名 ( D)上面 B和 C都对 19 在 Visual FoxPro中,程序中不需要用 PUBLIC等命令明确声明和建立,可直接使用的内存变
7、量是 _。 ( A)局部变量 ( B)私有变量 ( C)公共变量 ( D)全局变量 20 以下关于空值 (NULL值 )叙述正确的是 _。 ( A)空值等于空字符串 ( B)空值等同于数值 0 ( C)空值表示字段或变量还没有确定的值 ( D) Visual FoxPro不支持空值 21 执行 USE sc IN 0 命令的结果是 _。 ( A)选择 0号工作区打开 sc表 ( B)选择空闲的最小号工作区打开 sc表 ( C)选择第 1号工作区打开 sc表 ( D)显示出错信息 22 在 Visual FoxPro中,关系数据库管理系统所管理的关系是 _。 ( A)一个 DBF文件 ( B)若
8、干个二维表 ( C)一个 DBC文件 ( D)若干个 DBC文件 23 在 Visual FoxPro中,下面描述正确的是 _。 ( A)数据库表允许对字段设置默认值 ( B)自由表允许对字段设置 默认值 ( C)自由表或数据库表都允许对字段设置默认值 ( D)自由表或数据库表都不允许对字段设置默认值 24 SQL的 SELECT语句中, “HAVING条件表达式 ”用来筛选满足条件的 _。 ( A)列 ( B)行 ( C)关系 ( D)分组 25 在 Visual FoxPro中,假设表单上有一选项组: 男 女,初始时该选项组的Value属性值为 1。若选项按钮 “女 ”被选中,该选项组的
9、Value属性值是 _。 ( A) 1 ( B) 2 ( C)女 ( D)男 26 在 Visual FoxPro中,假设教师表 T(教师号,姓名,性别,职称,研究生导师 )中,性别是 C型字段,研究生导师是 L型字段。若要查询 “是研究生导师的女老师 ”信息,那么 SQL语句 “SELECT*FROM T WHERE逻辑表达式 ”中的逻辑表达式应是 _。 ( A)研究生导师 AND 性别 =“女 “ ( B)研究生导师 OR 性别 =“女 “ ( C)性别 =“女 “AND 研究生导师 =.F. ( D)研究生导师 =.T.OR 性别 =女 27 在 Visual FoxPro中,有如下程序
10、,函数 IIF()返回 值是 _。 *程序 PRIVATE X,Y STORE“男 “TO X Y=LEN(X)+2 ?IIF(Y。 2、私有变量:在程序中直接使用 (没有通过 PUBLIC和 LOCAL 命令事先声明 )而由系统自动隐含建立的变量都是私有变量。私有变量的作用域是建立它的模块及其下属的各层模块。所以选项 B是正确的。 3、局部变量:只能在建立它的模块中使用,不能在上层或下层模块中使用。局部变量 用 LOCAL 命令建立: LOCAL。 20 【正确答案】 C 【试题解析】 空值与空 (或空白 )字符串、数值 0等具有不同的含义,空值就是缺值或不确定值。 21 【正确答案】 B
11、【试题解析】 USE 命令: USE tableName in nWorkArea。直接指定在哪个工作区中打开表。其中参数 nWorkArea是一个大于等于 0的数字,用于指定工作区号,最小的工作区号是 1,最大的工作区号是 32767(即同一时刻最多允许打开32767个作区 ),如果指定为 0,则选择编号最小的可用 工作区 (即尚未使用的工作区 );因此执行 USE sc IN 0 表示选择空闲的最小号工作区打开 sc表,所以选项 B是正确的。 22 【正确答案】 B 【试题解析】 关系数据库管理系统可以对多个关系型数据库进行管理。基本的数据结构是二维表。 23 【正确答案】 A 【试题解析
12、】 所谓自由表,就是那些不属于任何数据库的表。可以将自由表添加到数据库中,使之成为数据库表;也可以将数据库表从数据库中移出,使之成为自由表。数据库表与自由表相比,数据库表具有以下特点: 1、数据库表可以使用长表名,在表中可以 使用长字段名; 2、可以为数据库表中的字段指定标题和添加注释; 3、可以为数据库表规定字段级规则和记录级规则; 4、数据库表的字段有默认的控件类: 5、可以为数据库表的字段指定默认值和输入掩码; 6、数据库支持主关键字、参照完整性和表之间的关联; 7、支持 INSERT、 UPDATE 和DELETE事件的触发器。因此数据库表允许对字段设置默认值,选项 A说法是正确的,选
13、项 D说法是错误的,而自由表不允许对字段设置默认值,选项 B、 C说法都是错误的。 24 【正确答案】 D 【试题解析】 SQL的核心是查询。 SQL的查 询命令也称作 SELECT 命令。它的基本形式由 SELECT-FROM-WHERE查询块组成。其中 HAVING 短语必须跟随GROUP BY使用,它用来限定分组必须满足的条件。 25 【正确答案】 B 【试题解析】 选项按钮组的 Value属性表示初始化或返回选项组中被选中的选项按钮。该属性值的类型可以是数值型的 (这是默认的情况 ),也可以是字符型的。如Value属性值为数值型 3,则表示选项按钮组中第 3个按钮被选中;若变量值为字符
14、型 “Option3”,则 Caption 属性值为 “Option3”的按钮被选中。 本题中初始时该选项组的 Value属性值为 1,若选项按钮 “女 ”被选中,表示第二个选项按钮被选中,则该选项组中 Value属性值是数值 2,因此选项 B 是正确的。 26 【正确答案】 A 【试题解析】 由题意可知,性别是 C型字段,则性别字段值的数据类型为字符型数据,研究生导师是 L 型字段,则研究生导师字段的数据类型为逻辑型数据。逻辑型数据只有逻辑真和逻辑假两个值。逻辑真的常量表示形式有: .T.、 .t.、 .Y.、 .y.,逻辑假的常量表示形式有: .F.、 .f.、 .N.、 .n.,前后两个
15、句点作为逻辑型常量的定界符 是必不可少的,否则会被误认为变量名。要查询 “是研究生导师的女老师 ”,则条件应该有两个,首先要是 “研究生导师 ”,其次要是 “女老师 ”,而且两个条件之间的关系为 “且 的关系,则逻辑连接词应用 “AND”,所以排除选项 B、 D。因为 “是研究生导师 ”,那么研究生导师字段的词就应该为逻辑真,即研究生导师 =.T.,排除选项 C,所以选项 A是正确的。 27 【正确答案】 A 【试题解析】 IIF函数的功能为条件测试。格式为: IIF(, , 。功能为:测试 的值,若为逻辑真 (.T.),则函数返回 的值;若为逻辑假 (.F.),则函数返回 的值。 PRIVA
16、TE X,Y。 PRIVATE 表示隐藏指定在上层模块中可能已经存在的内存变量,使得这些变量在当前模块程序中暂时无效。即 X, Y这两个变量在该程序是可以使用的。STORE“男 “TOX,即将 “男 ”赋值给 X变量, X=“男 “; LEN()表示测试当前字符表达式中所包含的字段的个数,其中汉字占两个字符。 X=“男 “,则 LEN函数返回的函数值为数值 2,表达式 Y=2+2=4; IIF(Y 4,“男 “, “女 “)即如果 Y的值小于4,则 函数返回的值为 “男 ”,否则为 “女 ”。执行完第三条语句后变量 Y的值为 4,4不小于 4,所以第一个逻辑表达式的值为逻辑假,则取第二个表达式
17、的值,即最后返回的值为 “女 “,则选项 A是正确的。 28 【正确答案】 A 【试题解析】 在 Visual FoxPro中,一次可以打开多个数据库,在每个数据库中都可以打开多个表,另外还可以打开多个自由表。如果在同一时刻需要打开多个表,则只需要在不同的工作区中打开不同的表就可以了。在每个工作区中可以打开一个表 (即在一个工作区中不能同时打开多个表 )。 29 【正确答案】 C 【试题解析】 删除规则规定了当删除父表中的记录时,如何处理子表中相关的记录: 如果选择 “级联 ”,则自动删除子表中的所有相关记录。 如果选择 “限制 ”,若子表中有相关的记录,则禁止删除父表中的记录。 如果选择 “
18、忽略 ”,则不作参照完整性检查,即删除父表的记录时与子表无关,所以选项 C是正确的。 30 【正确答案】 D 【试题解析】 报表主要包括两个部分;数据源和布局。数据源是报表的数据来源,通常是数据库中的表或自由表,也可以是视图、查询或临时表。 31 【正确答案】 C 【试题解析】 题意要求查询学生选修课程成绩小于 60分的学号,要查询的字段是学号字段,条件是成绩字段的值小于 60分,学号和成绩字段在 SC 表中,所以查询应基于 SC表进行,字段即字段变量是变量名,不需要加双引号,所以排除A、 D选项。成绩字段为 N型字段,即为数值型数据,不需要加任何的定界符。所以选项 B 也是不正确的,正确的
19、SQL 语句是 SELECT DISTINCT 学号 FROM SC WHERE 成绩 60,即选项 C。 32 【正确答案】 A 【试题解析】 Into cursor短语将查询结果存放到 临时表中,格式为:select*fromInto cursor cursorname。题目要求查询学生表 S的全部记录并存储于临时表文件 one中, SQL 命令为: SELECT*FROM S INTO CURSOR one,所以选项 A是正确的,其它选项语法均不正确。 33 【正确答案】 A 【试题解析】 查询成绩在 70分至 85分之间学生的学号、课程号和成绩,这三个字段都在 SC表中,因此查询结果应该是从 SC 表,成绩在 70到 85分之间是指包括边界 70分和 85分, A选项 “WHERE 成绩 BETWEEN 70 AND 85”等价于 “成绩 =70 and成绩 =(SELECT AVG(成绩 )FROM sc) 。