34次VF真题.docx
- 文档编号:12187821
- 上传时间:2023-04-17
- 格式:DOCX
- 页数:26
- 大小:56.22KB
34次VF真题.docx
《34次VF真题.docx》由会员分享,可在线阅读,更多相关《34次VF真题.docx(26页珍藏版)》请在冰豆网上搜索。
34次VF真题
1、程序调试的任务是______。
A、设计测试用例
B、验证程序的正确性
C、发现程序中的错误
D、诊断和改正程序中的错误
由程序调试的概念可知:
程序调试活动由两部分组成,其一是根据错误的迹象确定程序中错误的确切性质、原因和位置。
其二,对程序进行修改,排除这个错误。
所以程序调试的目的就是诊断和改正程序中的错误。
故本题答案为D。
2、下列关于线性链表的叙述中,正确的是______。
A、各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致
B、各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续
C、进行插入和删除时,不需要移动表中的元素
D、以上三种说法都不对
线性表的链式存储结构称为线性链表,为了适应线性表的链式存储结构,计算机存储空间被划分为一个一个小块,每一小块占若干字节,通常称这些小块为存储结点。
每一个存储结点分为两部分:
一部分用于存储数据元素的值,称为数据域;另一部分用于存放下一个数据元素的存储序号,即指向后件的结点,称为指针域。
在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致。
因此选项A、B均不正确。
为了要在线性链表中插入一个新元素,首先要给该元素分配一个新结点,以便用于存储该元素的值,然后将存放新元素值的结点链接到线性表中指定的位置。
在线性链表的插入过程中不发生数据无素移动的现象,只需改变有关结点的指针即可,从而提高了插入的效率。
为了在线性链表中删除包含指定元素的结点,首先要在线性链表中找到这个结点,然后将要删除结点放回到可利用栈。
在线性链表中删除一个元素后,不需要移动表的数据元素,只需改变被删元素所在结点的前一个结点的指针域即可。
因此,进行插入与删除时,不需要移动表中的元素。
故本题答案为C。
3、软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是______。
A、学生成绩管理系统
B、C语言编译程序
C、UNIX操作系统
D、数据库管理系统
系统软件是计算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件。
如操作系统,编译程序,汇编程序,网络软件,数据库管理系统等。
数据库管理系统、C语言编译程序、UNIX操作系统均属于系统软件。
因此,选项B、C、D均不正确。
应用软件是为解决特定领域的应用而开发的软件。
学生成绩管理系统用于学校对学生的成绩进行管理,面向实际应用而开发的软件。
故本题答案为A。
4、某系统总体结构图如下图所示:
该系统总体结构图的深度是______。
A、7B、6C、3D、2
结构图的深度表示控制的层数。
如图所示在XY系统中包含功能1、功能2、功能3,其中功能2又包含3个子功能。
该系统结构共三层,系统深度就为3。
故本题答案为C。
5、数据库系统的三级模式不包括______。
A、概念模式
B、内模式
C、外模式
D、数据模式
数据库系统的三级模式是概念模式、内部模式与外部模式。
故本题答案为D。
6、下列关于数据库设计的叙述中,正确的是______。
A、在需求分析阶段建立数据字典
B、在概念设计阶段建立数据字典
C、在逻辑设计阶段建立数据字典
D、在物理设计阶段建立数据字典
数据库设计的基本任务是根据用户对象的信息需求、处理需求和数据库的支持环境设计出数据模式。
需求收集和分析是数据库设计的第一阶段,数据字典是在需求分析阶段建立,在数据库设计过程中不断修改、充实、完善的。
故本题答案为A。
7、下列叙述中正确的是______。
A、算法就是程序
B、设计算法时只需要考虑数据结构的设计
C、设计算法只需要考虑结果的可靠性
D、以上三种说法都不对
算法是指解题方案的准确而完整的描述。
但算法不等于程序,也不等于计算方法。
当然,程序也可以作为算法的一种描述,但程序通常还需要考虑很多与方法和分析无关的细节问题,这是因为在编写程序时要受到计算机系统运行环境的限制。
通常,程序的编制不可能优于算法的设计。
因此选项A不正确。
作为一个算法,一般应具有可行性、确定性、有穷性、拥有足够情报四个基本特征。
因此设计算法时不仅仅要考虑结果的可靠性,即不仅考虑算法结果的可行性,还要考虑步骤的确定性,时间和步骤的有穷性等。
因此选项C不正确。
因此,算法是一组严谨地定义运算顺序的规则,并且每一个规则都是有效的,且是明确的,此顺序将在有限的次数下终止。
一个算法通常由两种基本要素组成:
一是对数据对象的运算和操作,二是算法的控制结构。
因此设计算法时不仅需要考虑数据结构的设计,还要考虑数据的操作和运算及各操作之间的执行顺序。
因此选项B也不正确。
故本题答案为D。
8、下列选项中属于面向对象设计方法主要特征的是______。
A、继承
B、自顶向下
C、模块化
D、逐步求精
结构化程序设计方法的主要原则可以概括为自顶向下,逐步求精,模块化等。
选项B、C、D均属于结构化程序设计的原则,因此都不选。
关于面向对象方法,对其概念有许多不同的看法和定义,但是都涵盖对象及对象属性与方法、类、继承、多态性几个基本要素。
其中面向对象设计方法主要特征是继承。
故本题答案为A。
9、有三个关系R、S和T如下
则由关系R和S得到关系T的操作是______。
A、自然连接
B、差
C、交
D、并
连接运算将两个关系模式拼接成一个更宽的关系模式,生成的新关系中包含满足连接条件的元组。
在连接运算中,按照字段值对应相等为条件进行的连接操作称为等值连接。
自然连接是指去掉重复属性的等值连接。
关系R、S结构相同,无法进行连接运算。
因此选项A不正确。
传统的集合运算包括:
并、差、交,且两个关系必须具有相同的关系模式,即相同结构。
并是由属于这两个关系的元组组成的集合。
因此选项D不正确。
交运算的结果是这两个关系的共同元组。
而关系R、S是共同元组有两个,且不是关系T中的元组。
因此选项C也不正确。
"差"运算的结果是从一个关系中去掉另一个关系也有的元组。
关系T中的元组是关系R中有而关系S中没有的元组。
则由关系R和S得到关系T的操作是差。
故本题答案为B。
10、下列关于二叉树的叙述中,正确的是______。
A、叶子结点总是比度为2的结点少一个
B、叶子结点总是比度为2的结点多一个
C、叶子结点数是度为2的结点数的两倍
D、度为2的结点数是度为1的结点数的两倍
在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个。
因此选项A不正确。
度为2的结点数跟度为1的结点数之间没有倍数关系。
因此选项D也不正确。
故本题答案为B。
11、本题使用如下3个表:
商店(商店号,商店名,区域名,经理姓名)
商品(商品号,商品名,单价)
销售(商店号,商品号,销售日期,销售数量)
查询在"北京"和"上海"区域的商店信息的正确命令是______。
A、SELECT*FROM商店WHERE区域名='北京'AND区域名='上海'
B、SELECT*FROM商店WHERE区域名='北京'OR区域名='上海'
C、SELECT*FROM商店WHERE区域名='北京'AND'上海'
D、SELECT*FROM商店WHERE区域名='北京'OR'上海'
查询在"北京"和"上海"区域的商店信息,则应该在商店表进行查询区域名为"北京"或"上海"的商店信息,因此指定条件的连接词用"OR"而不是"AND",选项A、C均不正确。
在指定条件区域名为"北京"或"上海"时必须指定哪个字段的名称等于"北京"或"上海",不能省略,因此选项D不正确。
查询在"北京"和"上海"区域的商店信息的正确命令是:
SELECT*FROM商店WHERE区域名='北京'OR区域名='上海'。
故本题答案为B。
12、假设表s中有10条记录,其中字段b小于20的记录有3条,大于等于20、并且小于等于30的记录有3条,大于30的记录有4条。
执行下面的程序后,屏幕显示的结果是______。
SETDELETEON
DELETEFROMsWHEREbBETWEEN20AND30
?
RECCOUNT()
A、10
B、7
C、0
D、3
BETWEEN…AND运算符包括边界值。
在VisualFoxPro中SQLDELETE命令同样是逻辑删除记录,如果要物理删除记录需要继续使用PACK命令。
在VisualFoxPro中删除记录有逻辑删除和物理删除两种,逻辑删除只是在记录旁作删除标记,必要时还可以去掉删除标记以恢复记录;而物理删除才是真正从表中删除记录。
命令"DELETEFROMsWHEREbBETWEEN20AND30"指逻辑删除表s中字段b的值大于等于20小于等于30的记录,表s中有10条记录,其中字段b大于等于20,并且小于等于30的记录有3条,则逻辑删除后剩下7条记录。
RECCOUNT()返回的是表文件中物理上存在的记录个数。
则用RECCOUNT()测试当前表中的记录时,返回的值为10。
故本题答案为A。
13、SQL查询命令的结构是SELECT…FROM…WHERE…
GROUPBY…HAVING…ORDERBY…,其中指定查询条件的短语是______。
A、SELECT
B、FROM
C、WHERE
D、ORDERBY
SELECT-SQL命令的格式:
SELECT[ALL|DISTINCT][<别名>.][AS<列名>]...]
FROM[FORCE][<数据库名>!
]<表名>[<本地名>][[INNER|LEFT[OUTER]|RIGHT[OUTER]|FULL[OUTER]JOIN<数据库名>!
]<表名>[<本地名>]ON<联接条件>...]
[[INTO<目标>]|[TOFILE<文件名>[ADDITIVE]|TOPRINTER[PROMPT]|TOSCREEN]]
[PREFERENCE<名字>][NOCONSOLE][PLAIN][NOWAIT]
[WHERE<联接条件>[AND<联接条件>...][AND|OR<筛选条件>[AND|OR<筛选条件>...]]]
[GROUPBY<组表达>[,<组表达>...]][HAVING<筛选条件>]
[UNION[ALL]]
[ORDERBY<关键字表达式>[ASC|DESC][,<关键字表达式>[ASC|DESC]...]]
[TOP<数值表达式>[PERCENT]]
说明:
(1)SELECT子句:
ALL表示选出的记录中包括重复记录,这是缺省值;DISTINCT则表示选出的记录中不包括重复记录。
[<别名>.]可以是字段名,也可以包含用户自定义函数和有关系统函数。
<别名>是字段所在的表名,<列名>用于指定输出时使用的列标题,可以不同于字段名。
SELECT表达式可用一个*号来表示,此时指定所有的字段。
(2)FROM子句及其选项:
用于指定查询的表与联接类型。
选择工作区与打开<表名>所指的表均由VFP自行安排。
对于非当前数据库,用"<数据库名>!
<表名>"来指定该数据库中的表。
<本地名>是表的暂用名,取了本地名后,本命令中该表只可使用这个名字。
JOIN关键字:
用于联接其左右两个<表名>所指的表。
INNER|LEFT[OUTER]|RIGHT[OUTER]|FULL[OUTER]选项:
提定两表联接时的联接类型。
ON子句:
用于指定联接条件。
FORCE子句:
严格按指定的联接条件来联接,避免VFP因进行联接优化而降低查询速度。
(3)INTO与TO子句:
用于指定查询结果的输出去向,默认查询结果显示在浏览窗口中。
INTO子句中的<目标>可以有3种选项:
ARRAY<数组>,CURSOR<临时表名>,DBF<表名>。
TOFILE子句的<文件名>表示输出到指定的文本文件,并取代原文件内容。
ADDITIVE表示只添加新数据,不清除原文件的内容。
TOPRINTER表示输出到打印机,PROMPT表示打印前先显示打印确认框。
TOSCREEN表示输出到屏幕。
(4)PREFERENCE子句:
用于记载浏览窗口的配置参数,再次使用该子句时可用<名字>引用此配置。
(5)NOCONSOLE子句:
禁止将输出送往屏幕。
若指定过INTO子句则忽略它的设置。
(6)PLAIN子句:
输出时省略字段名。
(7)NOWAIT子句:
显示流利窗口后程序继续往下执行。
(8)WHERE子句:
若已用ON子句指定了联接条件,WHERE子句中只能指定筛选条件,表示在已按联接条件产生的记录中筛选记录。
也可以省去JOIN子句,一次性地在WHERE子句中指定联接条件和筛选条件。
(9)GROUPBY子句:
对记录按<组表达式>值分组,常用于分组统计。
(10)HAVING子句:
当含有GROUPBY子句时,HAVING子句可用作记录查询的限制条件;无GROUPBY子句时HAVING子句的作用如同WHERE子句。
(11)UNION子句:
在SELECT-SQL命令中可以用UNION子句嵌入另一个SELECT-SQL命令,使这两个命令的查询结果合并输出,但输出字段的类型和宽度必须一致。
UNION子句默认组合结果中排除重复行,使用ALL则允许包含重复行。
(12)ORDERBY子句:
指定查询结果中记录按<表达式>排序,默认升序。
<表达式>只可以是字段,或表示查询结果中列的位置的数字。
ASC表示升序,DESC表示降序。
14、在VisualFoxPro中,如果在表之间的联系中设置了参照完整性规则,并在删除规则中选择了"级联",当删除父表中的记录,其结果是______。
A、只删除父表中的记录,不影响子表
B、任何时候都拒绝删除父表中的记录
C、在删除父表中记录的同时自动删除子表中的所有参照记录
D、若子表中有参照记录,则禁止删除父表中记录
VFP中的参照完整性规则包括更新规则、删除规则和插入规则三种。
每一种规则又有级联、限制和忽略三种设置。
①更新规则:
当父表中记录的关键字值被更新时触发
级联:
用新的关键字值更新子表中的所有相关记录;
限制:
若子表中有相关记录,则禁止更新;
忽略:
允许更新,不管子表中的相关记录。
②删除规则:
当父表中记录被删除时触发
级联:
删除子表中所有相关记录;
限制:
若子表中有相关记录,则禁止删除;
忽略:
允许删除,不管子表中的相关记录。
③插入规则:
当在子表中插入或更新记录时触发
级联:
无;
限制:
若父表中不存在匹配的关键字值,则禁止插入;
忽略:
允许插入。
故本题答案是C。
15、在VisualFoxPro中,查询设计器和视图设计器很像,如下描述正确的是______。
A、使用查询设计器创建的是一个包含SQLSELECT语句的文本文件
B、使用视图设计器创建的是一个包含SQLSELECT语句的文本文件
C、查询和视图有相同的用途
D、查询和视图实际都是一个存储数据的表
查询是预先定义好的一个SQLSELECT语句,在不同的场合可以直接或反复使用,从而提效率。
一般设计一个查询总要反复使用,查询是以扩展名为.QPR的文件保存在磁盘上的,这是一个文本文件。
所以使用查询设计器创建的是一个包含SQLSELECT语句的文本文件。
因此选项A正确。
视图是根据对表的查询定义的。
查询设计器的结果是将查询以扩展名为.QPR的文件保存在磁盘中;而视图设计完后,在磁盘上找不到类似的文件,视图的结果保存在数据库中。
视图是操作表的一种手段,通过视图可以查询表,通过视图也可以更新表,为此在视图设计器中多了一个"更新条件"选项卡。
因此视图设计器创建并不是一个包含SQLSELECT语句的文本文件,选项B不正确。
查询和视图并不具有相同的用途,通过视图可以查询表,通过视图也可以更新表,选项C不正确。
查询是一个查询文件而不是存储数据的表,而视图则是数据库的一张虚拟表,没有以文件形式存储,选项D也不正确。
故本题答案为A。
16、使用SQL语句将表s中字段price的值大于30的记录删除,正确的命令是______。
A、DELETEFROMsFORprice>30
B、DELETEFROMsWHEREprice>30
C、DELETEsFORprice>30
D、DELETEsWHEREprice>30
SQL从表中删除数据的命令的格式是:
DELETEFROMTablenameWHERECondition,其中From指定从哪个表中删除数据,WHERE指定被删除的记录所满足的条件,如果不使用WHERE子句,则删除该表中的全部记录。
因此使用SQL语句将表s中字段price的值大于30的记录删除的命令是:
DELETEFROMsWHEREprice>30。
故本题答案为B。
17、正确的SQL插入命令的语法格式是______。
A、INSERTIN…VALUES…
B、INSERTTO…VALUES…
C、INSERTINTO…VALUES…
D、INSERT…VALUES…
在SQL中插入命令的语法格式为:
INSERTINTOdbfnameVALUES。
故本题答案为C。
18、本题使用如下3个表:
商店(商店号,商店名,区域名,经理姓名)
商品(商品号,商品名,单价)
销售(商店号,商品号,销售日期,销售数量)
查询销售金额合计超过20000的商店,查询结果包括商店名和销售金额合计,正确命令是______。
A、SELECT商店名,SUM(销售数量*单价)AS销售金额合计
FROM商店,商品,销售
WHERE销售金额合计20000
B、SELECT商店名,SUM(销售数量*单价)AS销售金额合计>20000
FROM商店,商品,销售
WHERE商品.商品号=销售.商品号AND商店.商店号=销售.商店号
C、SELECT商店名,SUM(销售数量*单价)AS销售金额合计
FROM商店,商品,销售
WHERE商品.商品号=销售.商品号AND商店.商店号=销售.商店号
ANDSUM(销售数量*单价)>20000GROUPBY商店名
D、SELECT商店名,SUM(销售数量*单价)AS销售金额合计
FROM商店,商品,销售
WHERE商品.商品号=销售.商品号AND商店.商店号=销售.商店号
GROUPBY商店名HAVINGSUM(销售数量*单价)>20000
查询销售金额合计超过20000的商店的商店名和销售金额合计。
商店名来自商店表,销售金额=销售数量*单价,销售数量来自销售表,单价来自商品表,查询到结果首先商品表与销售表通过商品号建立连接,销售表和商店表通过商店号建立联系。
因为商店每一天的每一种商品都有可以销售,所以要计算商店的销售金额合计,就得按商品名进行分组,找出每一个商店一段日期所有商品的销售金额合计,销售金额合计用SUM(销售数量*单价),且要销售合计超过20000,则再指定分组满足的条件,可用HAVING子句限定分组。
选项A、B都没有分组,不能查询出满足条件的商店的信息。
选项C指定连接条件后再指定条件运算结果的条件这也不是正确的。
故本题答案为D。
19、本题使用如下3个表:
商店(商店号,商店名,区域名,经理姓名)
商品(商品号,商品名,单价)
销售(商店号,商品号,销售日期,销售数量)
查询单价最高的商品销售情况,查询结果包括商品号、商品名、销售日期、销售数量和销售金额。
正确命令是______。
A、SELECT商品.商品号,商品名,销售日期,销售数量,销售数量*单价AS销售金额FROM商品
JOIN销售ON商品.商品号=销售.商品号
WHERE单价=(SELECTMAX(单价)FROM商品)
B、SELECT商品.商品号,商品名,销售日期,销售数量,销售数量*单价AS销售金额FROM商品
JOIN销售ON商品.商品号=销售.商品号
WHERE单价=MAX(单价)
C、SELECT商品.商品号,商品名,销售日期,销售数量,销售数量*单价AS销售金额FROM商品
JOIN销售WHERE单价=(SELECTMAX(单价)FROM商品)
D、SELECT商品.商品号,商品名,销售日期,销售数量,销售数量*单价AS销售金额FROM商品
JOIN销售WHERE单价=MAX(单价)
查询单价最高的商品销售情况,查询结果包括商品号、商品名、销售日期、销售数量和销售金额。
商品号、商品名、单价来自商品表,而销售数量来自销售表,销售金额=销售数量*单价,因此要查询到结果首先商品表与销售表通过商品号建立连接,接着找出单价最高的商品的信息。
查询单价最高的商品需要用MAX(单价)进行运算。
选项C、D没有指定商品表和销售表的连接字段,因此不能选,而选项B要查询出单价最高的商品必须用SELECT语句,而不能用函数直接运算,也不能选。
故本题答案为A。
20、在数据库中建立索引的目的是______。
A、节省存储空间
B、提高查询速度
C、提高查询和更新速度
D、提高更新速度
VisualFoxPro索引是由指针构成的文件,这些指针逻辑上按照索引关键字的值进行排序。
索引文件和表的.dbf文件分别存储,并且不改变表中记录的物理顺序。
建立索引可以提高查询速度,但是维护索引是要付出代价的,当对表进行插入、删除和修改等操作时,系统会自动维护索引,也就是说索引会降低插入、删除和修改等操作的速度。
故本题答案为B。
21、为了使命令按钮在界面运行时显示"运行",需要设置该命令按钮的______属性。
A、Text
B、Title
C、Display
D、Caption
为了使命令按钮在界面运行时显示"运行",则需要将命令按钮的Caption属性的值设为"运行"。
选项A,Text属性是文本框中显示文本内容的属性,不能用于命令按钮,因此选项A不正确。
选项B、C,Title、Display属性同样都不能用于命令按钮,因此选项B、C均不正确。
故本题答案为D。
22、在VisualFoxPro中,使用SEEK命令查找匹配的记录,当查找到匹配的第一条记录后,如果还需要查找下一条匹配的记录,通常使用命令______。
A、GOTO
B、SKIP
C、CONTINUE
D、GO
GOTO和GO命令是等价的,命令格式为:
GOnRecordNumber,其中nRecordNumber是记录号,即直接按记录号定位,并不能按条件查找匹配的记录。
因此选项A、D均不正确。
当确定当前记录位置时,可以用SKIP命令向前或向后移动若干条记录位置。
SKIP命令格式是:
SKIPnRecords,其中nRecords可以是正整数或负整数,默认是1。
如果是正数则向后移动,如果是负数则向前移动,SKIP命令也不能按条件查找匹配的记录。
因此选项B也不正确。
在VisualFoxPro中,使用SEEK命令查找匹配的记录,当查找到匹配的第一条记录后,如果还需要查找下一条匹配的记录,通常使用命令CONTINUE。
故本题答案为C。
23、本题使用如下3个表:
商店(商店号,商店名,区域名,经理姓名)
商品(商品号,商品名,单价)
销售(商店号,商品号
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 34 VF