1、国家二级 VF机试(选择题)模拟试卷 166及答案与解析 一、选择题 1 下列关于栈和队列的描述中,正确的是 ( )。 ( A)栈是先进先出 ( B)队列是先进后出 ( C)队列允许在队头删除元素 ( D)栈在栈顶删除元素 2 已知二叉树后序遍历序列是 CDABE,中序遍历序列是 CADEB,它的前序遍历序列是 ( )。 ( A) ABCDE ( B) ECABD ( C) EACDB ( D) CDEAB 3 在数据流图中,带有箭头的线段表示的是 ( )。 ( A)控制流 ( B)数据流 ( C)模块调用 ( D)事件驱动 4 结构化程序设计的 3种结构是 ( )。 ( A)顺序结构,分支结
2、构,跳转结构 ( B)顺序结构,选择结构,循环结构 ( C)分支结构,选择结构,循环结构 ( D)分支结构,跳转结构,循环结构 5 下列方法中,不属于软件调试方法的是 ( )。 ( A)回溯法 ( B)强行排错法 ( C)集成测试法 ( D)原因排除法 6 下列选项中,不属于模块间耦合的是 ( )。 ( A)内容耦合 ( B)异构耦合 ( C)控制耦合 ( D)数据耦合 7 下列特征中不 是面向对象方法的主要特征的是 ( )。 ( A)多态性 ( B)标识惟一性 ( C)封装性 ( D)耦合性 8 在数据库设计中,将 E-R图转换成关系数据模型的过程属于 ( )。 ( A)需求分析阶段 ( B
3、)概念设计阶段 ( C)逻辑设计阶段 ( D)物理设计阶段 9 在一棵二叉树上,第 5层的结点数最多是 ( )。 ( A) 8 ( B) 9 ( C) 15 ( D) 16 10 下列有关数据库的描述,正确的是 ( )。 ( A)数据库设计是指设计数据库管理系统 ( B)数据库技术的根 本目标是要解决数据共享的问题 ( C)数据库是一个独立的系统,不需要操作系统的支持 ( D)数据库系统中,数据的物理结构必须与逻辑结构一致 11 要从字符串 “全国计算机等级考试 ”中取出子串 “等级考试 ”,应该使用函数 ( )。 ( A) SUBSTR(“全国计算机等级考试 ”, 6, 4) ( B) SU
4、BSTR(“全国计算机等级考试 ”, 6, 8) ( C) SUBSTR(“全国计算机等级考试 ”, 11, 4) ( D) SUBSTR(“全国计算机等级考试 ”, 11, 8) 12 关系数据库的任何检索操作所涉及的 3种基本 运算不包括 ( )。 ( A)连接 ( B)比较 ( C)选择 ( D)投影 13 下列关于项目及项目中文件的叙述,不正确的是 ( )。 ( A)项目中的文件与项目文件分别保存在独立的物理文件中 ( B)项目中的文件表示该文件与项目建立了一种联系 ( C)删除项目时自动删除项目中所包含的文件 ( D)通过项目可以方便地对项目中的文件进行操作 14 在 vFP中,创建
5、的新类可以被保存在类库文件中,其扩展名为 ( )。 ( A) prg ( B) vex ( C) pjx ( D) scx 15 在 Visual FoxPro中有如下内存变量的赋值语句: X=2008-08-08 8: 00: 00 AM Y= y Z=“12 34” 执行上述语句之后,内存变量的 X、 Y、 Z的数据类型为 ( ) ( A) D、 L、 C ( B) T、 L、 C ( C) D、 C、 N ( D) T、 C、 N 16 设 X=“123”, Y=“1234“,则下列表达式中值为 T的是 ( )。 ( A) X$Y ( B) AT(X,Y)=0 ( C) X=Y ( D)
6、 X=Y 17 下面程序的输 出结果为 ( )。 CLEAR i=1 DO WHILE i=1 b=b+SUBSTR(a, i, 1) i=i 1 ENDDO ?b ( A) profox ( B) foxpro ( C) orpxof ( D)程序错误 19 执行下列程序: CLEAR DO PROGl RETURN PROCEDURE PROG 1 X=2 DO PROG2 7X RETURN PROCEDURE PROG2 X=X+3 RETURN 程序的运行结果 为 ( )。 ( A) 2 ( B) 3 ( C) 5 ( D) F 20 使用 SQL语句将学生表 S中年龄 (AGE)大
7、于 30岁的记录删除,正确的命令是( )。 ( A) DELETE FOR AGE30 ( B) DELETE FROM S WHERE AGE30 ( C) DELETE S FORAGE30 ( D) DELETE S WHERE AGE30 21 有关 PACK命令的描述,正确的是 ( )。 ( A) PACK命令能物理删除当前表的当前记录 ( B) PACK命令能删除当前 表的带有删除标记的记录 ( C) PACK命令能删除当前表的全部记录 ( D) PACK命令能删除表的结构和全部记录 22 可以在添加、更改或删除记录时自动维护索引的索引是 ( )。 ( A)非结构化复合索引文件 (
8、 B)结构化复合索引文件 ( C)单一索引文件 (IDX) ( D)复合索引文件 (CDX) 23 设有两个数据库表,父表和子表之间是一对多的联系,为控制父表和子表中数据的一致性,可以设置 “参照完整性规则 ”,要求 ( )。 ( A)在父表连接字段上建立普通索引,在子表连接字段上建立主索引 ( B)在父表连接字段上建立主索引,在子表连接字段上建立普通索引 ( C)在父表连接字段上不需要建立任何索引,在子表连接字段上建立普通索引 ( D)在父表和子表的连接字段上都要建立主索引 24 在 VFP中,下列关于表的叙述正确的是 ( )。 ( A)在数据库表和自由表中,都不能为表的字段指定默认值和输入
9、掩码 ( B)在数据库表和自由表中,都能为表中的字段指定标题和添加注释 ( C)在自由表中,能使用长表名和长字段名 ( D)在数据库表中,能给表中的字段定义有效性规则和默认值 25 假设当前 xs和 cj表之间建立了临时联系,要取消两表间的联系,可使用 ( )。 ( A) DELETE RELATION ( B) DELETE REIRATION xs TO cj ( C) SETRELATION TO ( D) SET RELATION xs TO Cj 26 假设 “教师 ”表中有 C型字段 “姓名 ”,要求将姓 “李 ”的教师记录全部打上删除标记,可以使用 SQL命令 ( )。 ( A)
10、 DELETE FROM教师 FOR姓名 =“李 ” ( B) DELETE FROM教师 WHERE姓名 =“李 ” ( C) DELETE FROM教师 FOR姓名 =”李 #” ( D) DELETE FROM教师 WriERE姓名 LIKE“李 ” 27 如果要创建一个 3级分组报表,第一级分组是 “部门 ”(字符型 ),第二级分组是“性别 ”(字符型 ),第三级分组是 “基本工资 ”(数值型 ),当前索引的索引表达式应当是 ( )。 ( A)部门 +性别 +基本工资 ( B)性别 +部门 +STR_(基本工资 ) ( C) STR(基本工资 )+性别 +部门 ( D)部门 +性别 +
11、STR(基本工资 ) 28 如果想在运行表单时,向 TEXT2中输入字符,回显字 符显示的是 “*”号,则可以在 Forml的 Init事件中加入语句 ( )。 ( A) FORM 1 TEXT2 PASSWORDCHAR=“*” ( B) FORM1 TEXT2 PASSWORD=“*” ( C) THISFORM TEXT2 PASSWORD=“*” ( D) THISFORM TEXT2 PASSWORDCHAR=“*” 29 页框控件也称作选项卡控件,在一个页框中可以有多个页面,页面个数的属性是 ( )。 ( A) Page ( B) ButtonCount ( C) PageCoun
12、t ( D) ColumnCount 30 以下属于容器类控件的是 ( )。 ( A)表单 ( B)标签 ( C)文本框 ( D)组合框 31 有关列表框和组合框的叙述中,正确的是 ( )。 ( A)列表框可以设置多重选择,而组合框不可以 ( B)组合框可以设置多重选择,而列表框不可以 ( C)列表框和组合框都可以设置成多重选择 ( D)列表框和组合框都不可以设置成多重选择 32 下列关于视图的说法中,不正确的叙述是 ( )。 ( A)视图与表具有相同的特性,可以用来存储数据 ( B)利 用视图可以对数据进行更新 ( C)视图与数据表可以进行连接操作 ( D)视图是根据一个或多个表派生的虚拟表
13、 33 如果数据环境设计器中有多个关联的表,若要删除某个表,则与之关联的表与被删除表之间的关系将 ( )。 ( A)不再存在 ( B)可能存在 ( C)仍然存在 ( D)以上都对 34 在 SQL语句中,为了避免查询到重复记录,可用 ( )。 ( A) DISTINCT ( B) HAVING ( C) INTO ( D) EXCEPT 35 SOL的 SEL,ECT语句中,用来定义一个区间范 围的特殊运算符是 ( )。 ( A) IN ( B) BETWEENAND ( C) EXISTS ( D) UNION 35 下列小题使用如下 3个数据库表: 职员 dbfi职员号 C(3),姓名 C
14、(6),性别 C(2),组号 N(1),职务 C(10) 客户 dbfi客户号 C(4),客户名 C(36),地址 C(36),所在城市 C(36) 订单 dbf;订单号 C(4),客户名 C(4),职员号 C(3),签订日期 D,金额 N(6 2) 36 查询金额最大的 10订单的信息,正确的 SQL语句是 ( )。 ( A) SELCT*TOP 10 PERCENT FROM订单 ( B) SELECTTOP 10 *FROM订单 ORDER BY金额 DESC ( C) SELECT*TOP 10 PERCENT FROM订单 ORDERBY金额 ( D) SELECT TOP 10 P
15、ERCENT*FROM订单 ORDERBY金额 DESC 37 查询订单数在 3个以上、订单的平均金额在 200元以上的职员号,正确的 SQL语句是 ( )。 ( A) SELECT职员号 FROM订单 GROJP BY职员号 HAVING COUNT(*)3 AND AVG金额 200 ( B) SELECT 职员号 FROM订单 GROUP BY职员号 HAVING COUNT(*)3 AND AVG(金额 )200 ( C) SELECT职员号 FROM订单 GROIJP BY职员号 HAVING COtJNT(*)3 WHERE AVG(金额 )200 ( D) SELECT职员号:
16、FROM订单 GROJP BY职员号 WHERE COUNT(*)3 AND AVG金额 200 38 查询 2005年 1月 1日后签订的订单,显示订单的订单号、客户名以及签订日期,正确 的 SQL语句是 ( )。 ( A) SELECT订单号,客户名,签订日期 FROM订单 JOIN客户; ON订单客户号 =客户客户号 WHERE签订日 !期 2005-1-1 ( B) SELECT订单号,客户名,签订日期 FROM订单 JOIN客户; WHERE订单客户号 =客户客户号 AND签订日期 2005 1 1 ( C) SELECT。订单号,客户名,签订日期 FROM订单,客户: WHERE订
17、单客户号 =客户客户号 AND签订日期 , , ),功能是从指定表达式的指定起始位置取指定长度的子串作为函数值。在 SUBSTR()函数中,若缺省第 3个自变量 ,则函数从指定位置一直取到最后一个字符。由于一个汉字占用两个字节,本题中子串 “等级考试 ”的起始位置应该是 52+1=11,而几个汉字的长度为 42=8个字节。 12 【正确答案】 B 【试题解析】 关系数据库中检索操作涉及的 3种关系运算包括选择、投影和连接;选项 B)中的比较不属于关系运算。 13 【正确答案】 C 【试题解析】 在 Visual FoxPro中,项目中的文件并不是项目的一部分,每个文件都是独立存在的,项目所包含
18、的文件只能表示该文件与项目之间存在着一种联系,通过项目管理器可以方便地对项目中的文件进行修改、运行等操作,删除项目时,不会影响到项目管理器中的文件。 14 【正确答案】 B 【试题解析】 VFP将定义的子类保存在扩展名为 VCX的可视类库文件中,一个类库文件中可以保存多个自定义子类。 prg是程序文件扩展名, pjx是项目文件扩展名, $CX是表单文件扩展名。 15 【正确答案】 B 【试题解析】 本题中 X的变量值为日期时间型 (T),以花括号为定界符; Y的变量值为逻辑型 (L),以两个句点为定界符; Z的变量值为字符型 (C),以半角状态下的双引号、单引号或中括号为定界符。内存变量另外还
19、有 3种数据类型,分别是数值型 (N)、日期型 (D)和货币型 (Y)。 16 【正确答案】 A 【试题解析】 “$”为字串包含测试,如果前者是后者的一个子字符串,结果为逻辑真 ( T),否则为逻辑假 ( F ),本题中“123,是包含在 “1234”中的,故选项 A)的值为逻辑真 ( T)。 AT(, , )的函数值为数值型。如果是 的子串,则返回 值的首字符在 值中的位置;若不是子串,则返回 0。 用于表示要在 值中搜索 值的第几次出现,其默认值是 1。 用双等号运算符 “=”比较两个字符串,只有当两个字符串完全相同 (包括空格以及各字符的位置 )时,运算结果才会是逻辑真 ( T)。 用单
20、等号运算符 “=”比较两个字符串时,运算结果与 SET EXACT。 ON OFF设置有关,该命令是设置是否精确匹配的开关。该命令可以在命令窗口或在程序中执行,也可以通过 “数据 ”选项卡设置。 当处于 OFF状态时,只要右边的字符串与左边字符串的前面部分内容相匹配,即可得到逻辑真 ( T)的结果。也就是说,字符串的比较以右面的字符串为目标,右字符串结束即终止比较。 当处于 ON状态时,比较到两个字符串全部结束,先在较短字符串的尾部加上若干个空格,使两个字符串的长度相等,然后再进行比较。 17 【正确答案】 D 【试题解析】 DO WHILE-ENDDO语 句的格式: DO WHILE END
21、DO 执行该语句时,先判断 DO WHLE处的循环条件是否成立,如果条件为真,则执行 DO WHILE与 ENDDO之间的 (循环体 )。当执行到 ENDDO时,返回到 DOWHILE,再次判断循环条件是否为真,以确定是否再次执行循环体。若条件为假,则结束该循环语句,执行 ENDDO后面的语句。 先将 1赋给变量 i,然后进入 DO WHILE循环结构,判断条件是变量 X是否小于等于 3,如果大于 3,则退出循环,否则执行循环体,通过 INT(取整函数 )取得 i除以 2的 值的整数部分,判断该整数部分是否等于 i除以 2的值,如果不相等,则输出 “fox”,然后在同一行输出 “pro”,再执
22、行 i=i+2,重复此循环体的操作。 所以 i: 1时, INT(i 2)=0, i 2=0 5,输出 “fox”,然后输出 “pro”,执行i=i+2,此时 i=3, INT(i 2)=1, i 2=1 5,这两个值不相等,输出 “fox”,然后在同一行输出 “pro”,当再次执行 i=i+2,此时 i=5, i的值大于 3退出循环。 18 【正确答案】 C 【试题解析】 先将 a和 b分别赋值,变量 i使用 LEN函数取得 字符串变量 a的长度,该变量包含 6个字母,所以它的长度为 6,即 i=6;接着使用一个 DO WHILE循环语句来操作,判断条件是变量 i是否大于等于 1,如果小于
23、1,则退出循环,否则执行循环体,此时 SLJBSTR(“foxpro“,6, 1)的值为 “o”(从 “foxpro”字符串的第 6位开始取一位字符 );执行 i=i-1后, i=5,第一次循环结束;重复此循环体的操作,变量 b的值依次为 o、 or、 orp、 orpx、 orpxo、 orpxof,最后i, , )从 指定表达式值的指定起始位置取指定长度的子串作为函数值,若缺省第 3个参数 ,则函数从指定位置一直取到最后一个字符。 19 【正确答案】 C 【试题解析】 在主程序中,执行程序 PROGl;程序 PROGl中把初始值 2赋给变量 X, X是私有变量 (在程序中直接使用,没有通过
24、 public或 local命令事先声明的是私有变量 ),它的作用范围是建立它的模块及其下属的各层模块,然后运行程序PROG2,在程序 PROG2执行 X=X+3,执行完毕后,变量 X的值为 5,接着返回到程序 PROGl输出。所以程序的运行结果是 5。 20 【正确答案】 B 【试题解析】 在 SQL中,删除记录的命令是: DELETE FROMWHERE。 21 【正确答案】 B 【试题解析】 PACK命令的作用是:物理删除当前表中有删除标记的记录。 22 【正确答案】 B 【试题解析】 与表名相同的结构化复合索引在打开表时都能够自动打开,并且在添加、更改或删除记录时自动维护索引,但是对于
25、非结构索引 (包括单一索引文件、非默认名的 cdx索引 )必须在使用之前打开索引文件。 23 【正确答案】 B 【试 题解析】 在设置两个数据表的参照完整性之前,要先设置两个表的联系,在父表的连接字段上建立主索引,在子表的连接字段上建立普通索引。 24 【正确答案】 D 【试题解析】 在数据库表中,可以为表的字段指定默认值、输入掩码、有效性规则、标题和添加注释,也可以使用长表名和长字段名;而在自由表中,不具备数据库表的这些特点。 25 【正确答案】 C 【试题解析】 当临时联系不再需要时可以取消,命令: SET RELATION TO,将取消当前表到所有表的临时联系。 如果只是取消某个具体的临
26、时联系,应该 使用命令: SET RELATION OFF INTO nWorkArea lcTableAlias 建立临时联系的命令是: SET REL,ATIONro eExpression INTO nWorkArea, l cTableAlias 26 【正确答案】 D 【试题解析】 在 SOL的 WHRER子句的条件表达式中,字符串匹配的运算符是LIKE,通配符 “ ”表示 O个或多个字符,另外还有一个通配符 “”表示一个字符。 27 【正确答案】 D 【试题解析】 STR()的功能是将 数值表达式的值转换成字符串,本题中的 “+”是字符串连接符,将 3个字段表达式按分组的级别顺序连
27、接在一起,构成多重索引,实现多级分组。 28 【正确答案】 D 【试题解析】 文本框控件的 PASSWORDCI-IAR属性用来指定文本框内是显示用户输入的字符、占位符,还是用来指定用作占位符的字符。本题所要指定口令文本框的占位符为 “*”,因此应使用 PASSWORDCHAR属性。 THISFORM表示当前表单。 29 【正确答案】 C 【试题解析】 页框控件中页面个数的属性是 PageCount。 Page属性是一个数组,用于存取页框中的某个页对象: ButtonCount属性可用于指定选项组或命令按钮组中按钮的数目; ColumnCount属性指定表格的列数,也即一个表格对象所包含的列对
28、象数目。 30 【正确答案】 A 【试题解析】 容器类控件可以包容其他的控件或容器,例如表单、表格、页框等:标签、文本框和组合框都属于非容器类控件。 31 【正确答案】 A 【试题解析】 列表框提供一组条目,用户可以从中选择一个或多个条目。组合框也是用于提供一组条目供用户从中选择,但只有一个条目是可见的,并 且不提供多重选择的功能。 32 【正确答案】 A 【试题解析】 视图是根据一个或多个基本表派生出来的,所以把它叫做虚拟表。在关系数据库中,视图始终不曾真正地含有数据,它总是原来表的一个窗口。在视图中,不但可以进行查询,还可以对数据表进行更新。视图可以与表进行连接操作。 33 【正确答案】
29、A 【试题解析】 数据环境中能够包含与表单有联系的表和视图以及它们之间的关系。当表从数据环境中移去时,与这个表有关的所有关联也将随之消失。 34 【正确答案】 A 【试题解析】 如果要去掉查询 结果中的重复值,只需要使用 DISTINCT短语。 35 【正确答案】 B 【试题解析】 SQL语句中可包含特殊运算符,其中用来定义一个区间范围的运算符是 BETWEENAND 。 36 【正确答案】 D 【试题解析】 本题要查询金额最大的 10订单的信息,应该是按金额从高到低降序排列,另外只需要满足条件的前若干记录,应使用 TOP短语,再使用PERCENT短语,显示结果中前百分之几的记录。 37 【正
30、确答案】 B 【试题解析】 查询订单的平均金额在 200元以上,可用平均函数为 AVG(金额 )200表示,故可排除选项 A)和选项 D);订单数在 3个以上和订单的平均金额200元以上两个条件都是分组限定条件,须放在 HAVING子句中。 38 【正确答案】 A 【试题解析】 显示 2005年 1月 1日后签订订单,表示方法为:签订日期 2005-1-1,故排除选项 C)和选项 D)。两个表使用 JOIN连接,连接条件应使用 ON。 39 【正确答案】 B 【试题解析】 题目中给出的 SELECT语句是查找出姓名为 “李二 ”的职员签订的订单号、签订日期和金额。选项 B)中,使用 EXISTS谓词来检查子查询中是否有结果返回,它的查询过程是:外查询中,在订单表中从第一条记录开始取出当前职员号,再在内查询中,针对该职员号,在职员表中逐条记录判断是否存在符合WHERE条件的记录,如果存在,则在外查询的订单表中找到该职员号对应的订单号、签订日期和金额;然后依次类推,在订单表中从第二条记录中取出当前职员号,再在内查询中进行判断,直到将订单表中的所有记录都处理完毕。 40 【正确答案】 C 【试题解析】 删除记录的 SQL命令是: DELETE FROMWHERE。