2020年全国计算机二级vfp全真模拟考试题及答案(七)

发布时间:2019-12-13 07:12:41

2020年全国计算机二级vfp全真模拟考试题及答案(七)

1.下列叙述中正确的是( B )。

A)有一个以上根结点的数据结构不一定是非线性结构

B) 只有一个根结点的数据结构不一定是线性结构

C) 循环链表是非线性结构 D) 双向链表是非线性结构

【解析】线性结构应满足:有且只有一个根结点与每个结点最多有一个前件,也最多有一个后件,所以B)正确。所以有一个以上根结点的数据结构一定是非线性结构,所以A)错误。循环链表和双向链表都是线性结构的数据结构。

2.下列关于二叉树的叙述中,正确的是( B )。

A)叶子结点总是比度为2的结点少一个 B) 叶子结点总是比度为2的结点多一个

C) 叶子结点数是度为2的结点数的两倍 D) 度为2的结点数是度为1的结点数的两倍

【解析】根据二叉树的基本性质3:在任意一棵二叉树中,度为0的叶子结点总是比度为2的结点多一个。所以选择B)。

3.程序调试的任务是( D )。

A)设计测试用例 B) 验证程序的正确性 C) 发现程序中的错误 D) 诊断和改正程序中的错误

【解析】程序调试的任务是诊断和改正程序中的错误。

4.下列关于数据库设计的叙述中,正确的是( A )。

A)在需求分析阶段建立数据字典

B) 在概念设计阶段建立数据字典

C) 在逻辑设计阶段建立数据字典

D) 在物理设计阶段建立数据字典

【解析】数据字典是在需求分析阶段建立,在数据库设计过程中不断修改、充实和完善的。数据库系统的三级模式是概念模式、外模式和内模式

5.下列选项中属于面向对象设计方法主要特征的是( A )。

A)继承 B) 自顶向下 C) 模块化 D) 逐步求精

【解析】面向对象基本方法的基本概念有对象、类和实例、消息、继承与多态性,所以选择A)。

6.在Visual FoxPro中,要想将日期型或日期时间型数据中的年份用4位数字显示,应当使用设置命令( A )。

A)SET CENTURY ON B) SET CENTURY TO 4 C) SET YEAR TO 4 D) SET YAER TO yyyy

【解析】命令格式SET CENTURY ON|OFF|TO 的功能是用于决定如何显示或解释一个日期数据的年份。ON显示世纪,即用4位数字表示年份;OFF不显示世纪,即用2位数字表示年份;TO决定如何解释一个用2位数字年份表示的日期所处的世纪。

7.假设在数据库表的表设计器中,字符型字段"性别"已被选中,正确的有效性规则设置是( D )。

A)="男".OR."女" B) 性别="男".OR."女" C) $"男女" D) 性别$"男女"

【解析】建立字段有效性规则比较简单直接的方法是在表设计器中建立,在表设计器的"字段"选项卡中有一组定义字段有效性规则的项目,它们是"规则"、"信息"、"默认值"三项。其中"规则"是逻辑表达式,"信息"是字符串表达式,"默认值"的类型则以字段的类型确定。所以正确的有效性规则设置必须为逻辑表达式,四个选项中只有D)选项是正确的逻辑表达式。

8.在Visual FoxPro中,下面关于属性、事件、方法叙述错误的是( D )。

A)属性用于描述对象的状态 B) 方法用于表示对象的行为

C) 事件代码也可以像方法一样被显式调用

D) 基于同一个类产生的两个对象不能分别设置自己的属性值

【解析】在面向对象的概念中,属性用来表示对象的状态,方法用来描述对象的行为,事件是一种由系统预先定义而由用户或系统发出的动作,事件作用于对象,对象识别事件并作出相应反应,事件可以由系统引发,也可以由用户引发,当由用户引发时,可以像方法一样被显式调用。基于类生成的对象,虽然采用了相同的属性来表示状态,但它们在属性上的取值完全不同。这些对象一般有着不同的状态,且彼此间相对独立。

9.在表设计器中设置的索引包含在( C )。

A)单独索引文件中 B) 唯一索引文件中 C) 结构复合索引文件中 D) 非结构复合索引文件中

【解析】从索引的组织方式来讲,索引分为三类索引文件:单独的.idx索引,是一种非结构索引;采用非默认名的.cdx索引,也是非结构索引;与表名同名的.cdx索引,是结构复合索引。与表名同名的.cdx索引是一种结构复合压缩索引,它是Visual FoxPro数据库中最普通也是最重要的一种索引文件,用表设计器建立的索引都是这类索引。

10.假设表"学生.dbf"已在某个工作区打开,且取别名为student。选择"学生"表所在工作区为当前工作区的命令是( D )。

A)SELECT 0 B) USE 学生 C) SELECT 学生 D) SELECT student

【解析】指定工作区的命令格式为:SELECT nWorkArea|cTableAlias,其中参数nWorkArea是一个大于等于0的数字,用于指定工作区号,最小的工作区号是1,最大的工作区号是32767,如果这里指定为0,则选择编号最小的可用工作区;如果在某个工作区中已经打开了表,若要回到该工作区操作该表,可以使用参数cTableAlias,该参数是已经打开的表的别名。

11.以下关于视图的描述正确的是( B )。

A)视图和表一样包含数据 B) 视图物理上不包含数据

C) 视图定义保存在命令文件中 D) 视图定义保存在视图文件中

【解析】在Visual FoxPro中,视图是一个定制的虚拟表,它始终不曾真正地含有数据,它总是原来表的一个窗口,所以A)选项说法不正确,B)选项说法正确;视图的结果保存在数据库中,在磁盘上找不到类似的文件,所以C)选项、D)选项说法不正确。

12.以下关于关系的说法正确的是( C )。

A)列的次序非常重要 B) 行的次序非常重要 C) 列的次序无关紧要 D) 关键字必须指定为第一列

【解析】在关系中,列的次序是无关紧要,任意交换两列的位置也不影响数据的实际含义;行的次序也无关紧要,任意交换两行的位置并不影响数据的实际含义。关键字和索引是人为建立的,可以是符合条件的任一列;关键字是属性或属性的组合,关键字的值能够唯一地标识一个元组,对于关键字在关系中的位置,无关紧要。

13.下列程序段的输出结果是( B )。

ACCEPT TO A

IF A=[123]

S=0

ENDIF

S=1

? S

A)0 B) 1 C) 123 D) 由A的值决定

【解析】本题考察的是条件语句的知识,条件语句格式为:IF <条件><语句序列1>[ELSE><语句序列2>]ENDIF,其功能是根据<条件>是否成立从两组代码中选择一组执行,当无ELSE子句时,可看做第二组代码不包含任何命令,若<条件>成立,则执行<语句序列1>,然后转向ENDIF的下一条语句,因此本题不论A为多少都要执行end if后的语句,输出结果始终为S=1。

14.设A=[6*8-2],B=6*8-2,C=6*8-2,属于合法表达式是( c )

A)A+B B) B+C C) A-C D) C-B

【解析】合法的表达式是指:

①1 个字符串,只含1 个n目运算符与n个运算量,且该字符串正确表达了该n个变量进行该n目运算符的运算,则该字符串是一个合法的表达式。例如,C 语言中的x+5 与x>y?x:y 都是合法的表达式。

②A1,A2...An 是合法的表达式,则对1 个n 目运算符,由(A1),(A2)...(An)作为运算对象,按相应语法写成的字符串表达式是一个合法的表达式。

③规定一些隐性规则可确定运算符优先级规则以及参与运算符运算的各分量,第2步的表达式形成过程中去掉某一对括号并不影响运算符的计算方式,则去掉括号后的字符串也是合法的表达式。

本题A、C为字符型常量,B为数值型常量,只有A-C是合法的表达式,选项C)正确。

15.连续执行以下命令,最后一条命令的输出结果是( C )。

SET EXACT OFF

a="北京"

b=(a="北京交通")

? b

A)北京 B) 北京交通 C) .F. D) 出错

【解析】"set exact off"表示把精确比较关闭,所以"北京交通"="北京"为真(即认为它们确实相等),b=(a="北京交通"),因此输出结果为".F.",选项C)正确。

16.设x="123",y=123,k="y",表达式x+&k的值是( D )。

A)123123 B) 246 C) 123y D) 数据类型不匹配

【解析】本题考查宏替换函数:&<字符型变量>[],其功能为替换出字符型变量的内容,即函数值是变量中的字符串。本题数据类型不匹配,无法替换。

17.运算结果不是2010的表达式是( C )。

A)int(2010.9) B) round(2010.1,0) C) ceiling(2010.1) D) floor(2010.9)

【解析】INT(<数值表达式>)返回指定数值表达式的整数部分。CEILING(<数值表达式>)返回大于或等于指定数值表达式的最小整数。FLOOR(<数值表达式>)返回小于或等于指定数值表达式的最大整数。ROUND(<数值表达式1>,<数值表达式2>)返回指定表达式在指定位置四舍五入之后的结果,若(<数值表达式2>)大于等于0,那么它表示的是要保留的小数位数;若(<数值表达式2>)小于0,那么它表示的是整数部分的舍入位数。

18.学生表中有"学号"、"姓名"和"年龄"三个字段,SQL语句"SELECT 学号 FROM 学生"完成的关系操作称为( B )。

A)选择 B) 投影 C) 连接 D) 并

【解析】投影运算是从一个关系中选出若干指定字段的值的操作,从列的角度进行的运算。选择运算是从一个关系中找出满足给定条件的记录的操作,从行的角度进行的运算。连接关系是把两个关系中的记录按一定条件横向结合,生成一个新的关系。并运算要求有两个表。"SELECT 学号 FROM 学生"指从"学生"表中查询字段"学号",因此为投影运算。

19.查询"教师表"的全部记录并存储于临时文件one.dbf中的SQL命令是( A )。

A)SELECT * FROM 教师表INTO CURSOR one B) SELECT * FROM 教师表TO CURSOR one

C) SELECT * FROM 教师表INTO CURSOR DBF one D) SELECT * FROM 教师表TO CURSOR DBF one

【解析】在SQL查询语句的尾部添加INTO CURSOR <临时表名>可以将查询的结果放入指定的临时表中。此操作通常是将一个复杂的查询分解,临时表通常不是最终结果,可以接下来对临时表操作得到最终结果。生成的临时表是当前被打开的并且是只读的,关闭该文件时将自动删除。本题正确答案为A)。

20.创建一个名为student的新类,保存新类的类库名称是mylib,新类的父类是Person,正确的命令是( C )。

A)CREATE CLASS mylib OF student As Person B) CREATE CLASS student OF Person As mylib

C) CREATE CLASS student OF mylib As Person D) CREATE CLASS Person OF mylib As student

【解析】建立类语句的格式为"CREATE CLASS 类名 OF 类库名? AS 父类",题中要求新类的类库名称是mylib,父类是person,因此,正确的命令是"CREATE CLASS student OF mylib As Person",即C)选项正确。

21."教师表"中有"职工号"、"姓名"、"工龄"和"系号"等字段,"学院表"中有"系名"和"系号"等字段,计算"计算机"系教师总数的命令是( A )。

A)SELECT COUNT(*)FROM 教师表 INNER JOIN 学院表 ON 教师表.系号 = 学院表.系号 WHERE 系名="计算机"

B)SELECT COUNT(*)FROM 教师表 INNER JOIN 学院表 ON 教师表.系号 = 学院表.系号 ORDER BY 教师表.系号 HAVING 学院表.系名="计算机"

C)SELECT SUM(*)FROM 教师表 INNER JOIN 学院表 ON 教师表.系号 = 学院表.系号 GROUP BY 教师表.系号 HAVING 学院表.系名="计算机"

D)SELECT SUM(*)FROM 教师表 INNER JOIN 学院表 ON 教师表.系号 = 学院表.系号 ORDER BY 教师表.系号 HAVING 学院表.系名="计算机"

【解析】本题考查SELECT查询,Visual FoxPro的SQL SELECT命令的语法格式如下:

SELECT[ALL︱DISTINCT][TOP <数值表达式>[PERCENT]]

[<别名>.][AS <别名>…]

FROM[数据库名!]<表名>

[[INNER︱LEFT[OUTER]︱RIGHT[OUTER]︱FULL[OUTER]JOIN [数据库名!]<表名>

[ON 连接条件…]

[[INTO 目标文件]

︱[TO FILE文件名[ADDITIVE]︱TO PRINTER[PROMPT]︱TO SCREEN]]

[WHERE <连接条件>[AND 连接条件…][AND︱OR 筛选条件

[GROUP BY <分组表达式1>[,分组表达式2…]]

[HAVING<筛选条件>]

[UNION[ALL][AS <字段名>][,<别名>.] ]

[ORDER BY <排序表达式>[ASC︱DESC]

要查询教师总数最多的系的教师人数,首先排除B)选项。输出查询结果应使用into而不是to,排除C)选项。而B)选项命令语句的顺序错误,所以本题选D)。

23.假设"图书"表中有C型字段"图书编号",要求将图书编号以字母A开头的图书记录全部打上删除标记,可以使用SQL命令( D )。

A)DELETE FROM 图书 FOR 图书编号="A" B) DELETE FROM 图书 WHERE 图书编号="A%"

C) DELETE FROM 图书 FOR 图书编号="A*" D) DELETE FROM 图书 WHERE 图书编号LIKE "A%"

【解析】LIKE为字符串匹配运算符,可与通配符"%"和"_"一起使用。"%"表示与任意多个字符匹配;"_"表示与任意一个字符匹配。图书编号以字母A开头的图书记录可用LIKE "A%"表示,使用DELETE命令删除记录,正确的选项为D)。

24.下列关于命令DO FORM XX NAME YY LINKED的陈述中,正确的是( C )。

A)产生表单对象引用变量XX,在释放变量XX时自动关闭表单

B) 产生表单对象引用变量XX,在释放变量XX时并不关闭表单

C) 产生表单对象引用变量YY,在释放变量YY时自动关闭表单

D) 产生表单对象引用变量YY,在释放变量YY时并不关闭表单

【解析】可以使用DO FORM <表单文件名> [NAME <变量名>] WITH <实参1> [,<实参2>,…][LINKED][NOSHOW]来运行表单。如果包含NAME子句,系统将建立指定名字的变量,并使它指向表单对象;否则,系统建立与表单文件同名的变量指向表单对象。如果包含LINKED关键字,表单对象将随指向它的变量的清除而关闭(释放);否则,即使变量已经清除,表单对象依然存在。因此本题C)正确。

25.表单名为myForm的表单中有一个页框myPageFrame,将该页框的第3页(Page3) 的标题设置为"修改",可以使用代码( C )。

A)myForm.Page3.myPageFrame.Caption="修改" B) myForm.myPageFrame. Caption.Page3="修改"

C) Thisform.myPageFrame.Page3.Caption="修改"D) Thisform.myPageFrame.Caption.Page3="修改"

【解析】在容器的嵌套层次关系中,引用其中某个对象,需指明对象在嵌套层次中的位置。经常要用到的关键字是:Parent(对象的直接容器对象,即父对象);This(当前对象);ThisForm(当前表单);ThisFormSet(当前表单集)。本题将该页框的第3页(Page3)的标题设置为"修改",正确的代码应该是Thisform.myPageFrame.Page3.Caption="修改",即C)选项。

2020年全国计算机二级vfp全真模拟考试题及答案(七)

相关推荐