1、二级 VISUAL+FOXPRO笔试 394及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:31,分数:70.00)1.有下列二叉树,对此二叉树中序遍历的结果为( )。 (分数:2.00)A.BDYEACFXZB.DYBEAFCZXC.ABCDEFXYZD.ABDYECFXZ2.修改表单 MyForm的正确命令是( )。(分数:2.00)A.MODIFY COMMAND MyFormB.MODIFY FORM MyFormC.DO MyFormD.EDIT MyForm3.下列叙述中错误的是( )。(分数:2.00)A.一种数据的逻辑结构可以有多种存储结构B.数
2、据的存储结构与数据的处理效率无关C.数据的存储结构与数据的处理效率密切相关D.数据的存储结构在计算机中所占的空间不一定是连续的4.利用命令方式新建一个名为 SDB的数据库,下列正确的是( )。(分数:2.00)A.OPEN DATABASE SDBB.CREATE DATABASE SDBC.USE DATABASE SDBD.CREATE SDB5.在项目管理器中,选择一个文件并单击“移去”按钮,在弹出的对话框中单击“删除”按钮后,该文件将( )。(分数:2.00)A.仅仅从该项目中移走B.从项目中移走,并从磁盘上删除该文件C.保留在项目中,但删除磁盘上的文件D.从项目中移走,但可添加到另一
3、个项目中6.下列关于索引的叙述,不正确的是( )。(分数:2.00)A.Visual FoxPro支持单一索引文件和复合索引文件B.索引的类型有主索引、候选索引、唯一索引和普通索引C.结构复合索引文件不随库文件的关闭而关闭D.打开和关闭索引文件均使用 SET INDEX TO命令7.在 Visual FoxPro中进行参照完整性设置时,要想设置成:当更改父表中的主关键字段或候选关键字段时,自动更改所有相关子表记录中的对应值,应选择( )。(分数:2.00)A.限制(RestrjcB.忽略(IgnorC.级联(CascadD.级联(Cascad 或限制(Restric8.设 MY.DBF数据库中
4、共有 10条记录,执行下列命令序列: USE MY GOTO 2 DISPLAY ALL ?RECNO() 执行最后一条命令后,屏幕显示的值是( )。(分数:2.00)A.2B.3C.10D.119.下列工具中为需求分析常用工具的是( )。(分数:2.00)A.PADB.PFDC.N-SD.DFD10.对长度为 n的线性表进行顺序查找,在最坏情况下需要比较的次数为( )。(分数:2.00)A.125B.n/2C.nD.n+111.下列常量中格式正确的是( )。(分数:2.00)A.$1.23E4B.“计算机“等级考试“CFalsD.2003/01/1312.下列叙述中错误的是( )。(分数:2
5、.00)A.线性表是由 n个元素组成的一个有限序列B.线性表是一种线性结构C.线性表的所有结点有且仅有一个前件和后件D.线性表可以是空表13.在 Visual FoxPro中,用来指明复选框的当前状态的属性是( )。(分数:2.00)A.ValueB.CaptionC.StatusD.ControlSource14.在 Visual FoxPro中,嵌套查询是基于( )的查询(分数:2.00)A.2个关系B.3个关系C.多个关系D.2个或 3个关系15.在 Visual FoxPro中,关于视图的不正确的描述是( )。(分数:2.00)A.通过视图可以对表进行查询B.通过视图可以对表进行更新C
6、.视图就是一个虚表D.视图就是一个数据库表16.ROUND(6.165,2)的函数值是( )。(分数:2.00)A.6.16B.6.17C.6.20D.6.16017.在 Visual FoxPro中,有下列程序: *程序名:TEST.PRG *调用方法:DO TEST SET TALK OFF PRIVATE X,Y X=“Visual FoxPro“ Y=“二级“ DO SUB WITH X ?Y+X RETURN *子程序:SUB PROCEDURE SUB PARAMETERS X1 LOCAL X X=“Visual FoxPro DBMS 考试“ Y=“计算机等级“+Y RETUR
7、N 执行命令 DO TEST后,屏幕显示的结果为( )。(分数:2.00)A.二级 Visual FoxProB.计算机等级二级 Visual FoxPro考试C.二级 Visual FoxPro考试D.计算机等级二级 Visual FoxPro18.在“表单控件”工具栏中,下列哪个控件可以用来保存不希望用户改动的文本( )。(分数:2.00)A.标签B.文本框C.命令按钮D.列表框19.下列特征中不是面向对象方法的主要特征的是( )。(分数:2.00)A.多态性B.继承C.封装性D.模块化20.下列关于 SQL的超连接查询的描述中,说法不正确的是( )。(分数:2.00)A.Visual F
8、oxPro支持超连接运算符“*=”和“=*”B.在 SQL中可以进行内部连接、左连接、右连接和全连接C.SQL的超连接运算符“*=”代表左连接,“=*”代表右连接D.即使两个表中的记录不满足连接条件,都会在目标表或查询结果中出现,只是不满足条件的记录对应部分为空值21.作为整个应用程序入口点的主程序至少应具有下列功能( )。(分数:2.00)A.初始化环境B.初始化环境、显示初始用户界面C.初始化环境、显示初始用户界面、控制事件循环D.初始化环境、显示初始用户界面、控制事件循环、退出时恢复环境(31)(35)题使用下列数据表。“学生”表:学号 C(8),姓名 C(8),性别 C(2),系名(1
9、0), 出生日期 D“课程”表:课程编号 C(4),课程名称 C(12),开课系名 C(10)“成绩”表:学号 C(8),课程编号 C(4),成绩 I(分数:10.00)(1).检索每门课程的总分,查询结果中包括课程名和总分,正确的命令是( )。(分数:2.00)A.SELECT 课程名称,COUNT(成绩) AS 总分 FROM 课程,成绩; WHERE 课程.课程编号=成绩.课程编号; ORDER BY 成绩.课程编号B.SELECT 课程名称,COUNT(成绩) AS 总分 FROM 课程,成绩; WHERE 课程.课程编号=成绩.课程编号; GROUP BY 成绩.课程编号C.SELE
10、CT 课程名称,SUM(成绩) AS 总分 FROM 课程,成绩; WHERE 课程.课程编号=成绩.课程编号; ORDER BY 成绩.课程编号D.SELECT 课程名称,SUM(成绩) AS 总分 FROM 课程,成绩; WHERE 课程.课程编号=成绩.课程编号; GROUP BY 成绩.课程编号(2).下列 SQL查询语句所表示的含义是( )。 SELECT 课程名称,开课系名,COUNT(学号) AS 选修人数; FROM 成绩,课程; WHERE 课程.课程编号=成绩.课程编号; GROUP BY 课程名称; HAVING COUNT(*)3(分数:2.00)A.检索开课在 3门以
11、上的开课系名、课程名称和选修人数B.检索选修了 3门课程以上的学生记录,显示结果包括课程名称、开课系名和选修人数C.检索每门课程中,有 3人以上选修该课程的记录,显示结果包括课程名称、开课系名和选修人数D.检索选修人数最多的 3门课程的记录,显示结果包括课程名称、开课系名和选修人数(3).为“成绩”表中的“成绩”字段定义有效性检查及错误信息的提示,要求当成绩大于 100 分时,提示“成绩不能超过 100分”的信息,正确的命令是( )。(分数:2.00)A.ALTER TABLE 成绩 ALTER 成绩; FOR CHECK 成绩=100 ERROR“成绩不能超过 100分“B.ALTER TA
12、BLE 成绩 ALTER 成绩; (WHERE CHECK 成绩=100 ERROR“成绩不能超过 100分“)C.ALTER TABLE 成绩 ALTER 成绩; SET CHECK 成绩=100 ERROR“成绩不能超过 100分“D.ALTER TABLE 成绩 ALTER 成绩; (SET CHECK 成绩=100 ERROR“成绩不能超过 100分“)(4).利用 SQL派生一个包含“课程名称”、“姓名”和“成绩”的视图,要求按“课程名称”升序排序,正确的命令是( )。(分数:2.00)A.CREATE VIEW viewl AS; (SELECT 课程.课程名称,学生.姓名,成绩.
13、成绩; FROM 课程 INNER JOIN 成绩; INNER JOIN 学生; ON 成绩.学号=学生.学号; ON 课程.课程编号=成绩.课程编号; GROUP BY 课程名称)B.CREATE VIEW view1 AS; (SELECT 课程.课程名称,学生.姓名,成绩.成绩; FROM 课程 INNER JOIN 成绩; INNER JOIN 学生; ON 成绩.学号=学生.学号; ON 课程.课程编号=成绩.课程编号; ORDER BY 课程名称)C.CREATE VIEW view1 AS; SELECT 课程.课程名称,学生.姓名,成绩.成绩; FROM 课程 INNER J
14、OIN 成绩; INNER JOIN 学生; ON 成绩.学号=学生.学号; ON 课程.课程编号=成绩.课程编号; GROUP BY 课程名称D.CREATE VIEW view1 AS; SELECT 课程.课程名称,学生.姓名,成绩.成绩; FROM 课程 INNER JOIN 成绩; INNER JOIN 学生; ON 成绩.学号=学生.学号; ON 课程.课程编号=成绩.课程编号; ORDER BY 课程名称(5).向“成绩”表末尾插入一条“学号”为“08102002”,“课程编号”为“4001”,“成绩”为“86”的新记录,正确的命令是( )。(分数:2.00)A.INSERT I
15、NTO 成绩 VALUES(08102002,4001,86)B.INSERT INTO 成绩 VALUES(“08102002“,“4001“,86)C.INSERT FOR 成绩 VALUES(08102002,4001,“86“)D.INSERT FOR 成绩 VALUES(“08102002“,“4001“,86)22.设计软件结构是在软件生命周期的( )。(分数:2.00)A.软件定义期B.软件开发期C.软件维护期D.以上 3个都不是23.下列关于栈的描述中错误的是( )。(分数:2.00)A.栈是先进先出的线性表B.栈只能顺序存储C.栈具有记忆作用D.对栈的插入与删除操作中,不需要
16、改变栈底指针24.程序如下: SET TALK OFF INPUT TO X FOR i=1 TO 3 INPUT TO Y IF YX X=Y ENDIF ENDFOR ?X RETURN 本程序的功能是( )。(分数:2.00)A.求 3个数中的最大值B.求 4个数中的最大值C.求 3个数中的最小值D.求 4个数中的最小值25.下列有关数据库表和自由表的叙述中,错误的是( )。(分数:2.00)A.数据库表和自由表都可以用表设计器来建立B.数据库表和自由表都支持表间联系和参照完整性C.自由表可以添加到数据库中成为数据库表D.数据库表可以从数据库中移出成为自由表26.下列叙述中正确的是( )
17、。(分数:2.00)A.在模块化程序设计中,一个模块应该尽量多的包括与其他模块联系的信息B.在自顶向下、逐步细化的设计过程中,首先应设计解决问题的第一个细节C.在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则D.在程序设计过程中,不能同时采用结构化程序设计方法与模块化程序设计方法27.下列不属于软件工程 3个要素的是( )。(分数:2.00)A.工具B.过程C.方法D.环境28.在当前目录下有数据表文件“XS.dbf”,执行下列 SQL语句后( )。 SELECT*FROM XS INTO CURSOR XS ORDER BY 学号(分数:2.00)A.生成一个按“学号”升序的临时
18、表文件,将原来的 Xdbf文件覆盖B.生成一个按“学号”降序的临时表文件,将原来的 Xdbf文件覆盖C.不会生成新的排序文件,保持原数据表内容不变D.系统提示出错信息29.标准的 SQL基本查询语句的格式是( )。(分数:2.00)A.SELECTFROMWHEREB.SELECTWHEREFROMC.SELECTWHEREGROUPBYD.SELECTFROMORDERBY30.如果运行一个表单,下列事件首先被触发的是( )。(分数:2.00)A.InitB.LoadC.ClickD.Error二、B填空题/B(总题数:15,分数:30.00)31.算法的复杂度主要包括时间复杂度和 1 复杂
19、度。(分数:2.00)填空项 1:_32.按照逻辑结构分类,结构可以分为线性结构和非线性结构,栈属于 1。(分数:2.00)填空项 1:_33.树中度为零的结点称为 1。(分数:2.00)填空项 1:_34.在面向对象方法中,类之间共享属性和方法的机制称为 1。(分数:2.00)填空项 1:_35.软件是程序、数据和 1 的集合。(分数:2.00)填空项 1:_36.在关系数据模型中,二维表的列称为属性,二维表的行称为 1。(分数:2.00)填空项 1:_37.将成绩表中总分字段的默认值设置为 0,这属于定义数据 1 完整性。(分数:2.00)填空项 1:_38.建立一个视图 SCORE的命令
20、是:_VIEW AS SELECT*FROMT_SCORE。(分数:2.00)填空项 1:_39.将控件的 1 属性为假(.F.)后,可在表单中隐藏该控件。(分数:2.00)填空项 1:_40.建立远程视图必须首先建立与远程数据库的 1。(分数:2.00)填空项 1:_41.BETWEEN(45,30,48)的运算结果是_。(分数:2.00)填空项 1:_42.嵌套查询命令中的 1,相当于集合运算符号。(分数:2.00)填空项 1:_43.在 SQL分组与计算查询中,利用_短语可以对分组条件进一步加以限定。(分数:2.00)填空项 1:_44.删除学生表的候选索引 XUESH INDEX,该语
21、句格式为: ALTER TABLE 学生表_TAG XUESH_INDEX(分数:2.00)填空项 1:_45.检索学生成绩表中,总分在 600分以上的学生记录,将结果保存到临时文件 SCORE中,SQL 语句为: SELECT*FROM 学生成绩表 WHERE 总分=600_SCORE(分数:2.00)填空项 1:_二级 VISUAL+FOXPRO笔试 394答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:31,分数:70.00)1.有下列二叉树,对此二叉树中序遍历的结果为( )。 (分数:2.00)A.BDYEACFXZB.DYBEAFCZX C.ABCDEF
22、XYZD.ABDYECFXZ解析:解析 对二叉树的中序遍历是指:首先遍历左子树,然后访问根结点,最后遍历右子树。在遍历左、右子树时,依旧按照“左子树一根结点一右子树”的顺序。本题的遍历顺序是这样的:首先访问左子树:BDEY;在左子树 BDEY中,也按中序遍历,先访问左子树 DY:在左子树 DY中,也按中序遍历,先访问左子树,左子树没有,则访问根结点 D,然后访问右子树 Y:接着访问根 B,再访问右子树 E;访问左子树 BDEY后,接着访问根结点 A,然后访问右子树 CFXZ;同理可得右子树 CFXZ的访问顺序为FCZX。2.修改表单 MyForm的正确命令是( )。(分数:2.00)A.MOD
23、IFY COMMAND MyFormB.MODIFY FORM MyForm C.DO MyFormD.EDIT MyForm解析:解析 一个表单无论是通过何种途径创建的,都可以使用表单设计器进行编辑修改。要修改项目中一个表单,可按以下方法打开表单文件并进入表单设计器环境: 在“项目管理器”窗口中,选择“文档”选项卡;如果表单类文件没有展开,单击“表单”图标左边的加号;选择需要修改的表单文件,然后单击“修改”按钮。如果一个表单不属于任何项目,可以使用以下方法打开:单击“文件”菜单中的“打开”命令,然后在“打开”对话框中选择需要修改的表单文件;或者在命令窗口中输入命令MODIFY FORM表单文
24、件名。在这里,如果命令中指定的表单文件不存在,系统将启动表单设计器创建一个新表单。3.下列叙述中错误的是( )。(分数:2.00)A.一种数据的逻辑结构可以有多种存储结构B.数据的存储结构与数据的处理效率无关 C.数据的存储结构与数据的处理效率密切相关D.数据的存储结构在计算机中所占的空间不一定是连续的解析:解析 数据的存储结构分为顺序结构和链式结构,一个数据的逻辑结构可以有多种存储结构。顺序结构中数据元素所占的存储空间是连续的,而链式存储结构中,数据元素所占的存储空间不一定是连续的。数据的存储结构与数据的处理效率密切相关。4.利用命令方式新建一个名为 SDB的数据库,下列正确的是( )。(分
25、数:2.00)A.OPEN DATABASE SDBB.CREATE DATABASE SDB C.USE DATABASE SDBD.CREATE SDB解析:解析 在 Visual FoxPro中,新建数据库的命令格式是:CREATE DATABASE数据库名。OPEN DATABASE数据库名是用来打开一个已存在的数据库文件,选项 C)和 D)属于语法错误。5.在项目管理器中,选择一个文件并单击“移去”按钮,在弹出的对话框中单击“删除”按钮后,该文件将( )。(分数:2.00)A.仅仅从该项目中移走B.从项目中移走,并从磁盘上删除该文件 C.保留在项目中,但删除磁盘上的文件D.从项目中移
26、走,但可添加到另一个项目中解析:解析在 Visual FoxPro项目管理器中,单击“移去”按钮并在弹出的对话框中单击“删除”按钮后,该文件不存在于此项目中,同时从磁盘上删除该文件。单击“移去”按钮是将文件从项目中移走,但保留在磁盘上。6.下列关于索引的叙述,不正确的是( )。(分数:2.00)A.Visual FoxPro支持单一索引文件和复合索引文件B.索引的类型有主索引、候选索引、唯一索引和普通索引C.结构复合索引文件不随库文件的关闭而关闭 D.打开和关闭索引文件均使用 SET INDEX TO命令解析:解析 在 Visual FoxPro中,结构复合索引文件的主名与表文件名相同,它会随
27、着表的打开而自动打开;而非结构索引文件需要使用 SET INDEX命令或 USE命令中的 INDEX子句打开。7.在 Visual FoxPro中进行参照完整性设置时,要想设置成:当更改父表中的主关键字段或候选关键字段时,自动更改所有相关子表记录中的对应值,应选择( )。(分数:2.00)A.限制(RestrjcB.忽略(IgnorC.级联(Cascad D.级联(Cascad 或限制(Restric解析:解析 参照完整性与表之间的关联有关,它的大概含义是:当插入、删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,来检查对表的数据操作是否正确。更新规则规定了当在父表中的主关键
28、字段或候选关键字段更改时,是否进行参照完整性检查: 如果选择“级联”,用新的连接字段自动修改子表中的相关所有记录。 如果选择“限制”,若子表中有相关记录,则禁止修改父表中的连接字段值。 如果选择“忽略”,不做参照完整性检查,可以随意更新父表中的连接字段值。8.设 MY.DBF数据库中共有 10条记录,执行下列命令序列: USE MY GOTO 2 DISPLAY ALL ?RECNO() 执行最后一条命令后,屏幕显示的值是( )。(分数:2.00)A.2B.3C.10D.11 解析:解析 GOTO 和 GO命令是等价的,命令格式是: GO nRecordNumber|TOP|BOTTOM 其中
29、,nReeordNumber是记录号,即直接按记录号定位;TOP 是表头,当不使用索引时是记录号为 1的记录,使用索引时是索引项排在最前面的索引对应的记录;BOTTOM 是表尾,当不使用索引时是记录号最大的那条记录,使用索引时是索引项排在最后面的索引对应的记录。题意中的 GOTO 2表示指针指向第 2条记录。 DISPLAY ALL是显示全部记录,此时指针指向了最后一条记录。RECNO()函数的功能是返回当前表文件或指定表文件中当前记录的记录号。如果指定工作区上没有打开表文件,函数值为 0。如果记录指针指向文件尾,函数值为表文件中的记录数加 1。如果记录指针指向文件首,函数值为表文件中第一条记
30、录的记录号。由于执行 DISPLAY ALL 命令时,指针指向了文件尾,所以 RECNO()的函数值为表文件中的记录数加1,即 11。9.下列工具中为需求分析常用工具的是( )。(分数:2.00)A.PADB.PFDC.N-SD.DFD 解析:解析 需求分析常用的工具有数据流图(DFD)、数据字典(DD)、判定树和判定表。PAD(问题分析图)、PFD(程序流程图)、N-S(盒式图)都是详细设计的常用工具,不是需求分析的工具。10.对长度为 n的线性表进行顺序查找,在最坏情况下需要比较的次数为( )。(分数:2.00)A.125B.n/2C.n D.n+1解析:解析 对线性表进行顺序查找时,从表
31、中的第一个元素开始,将给定的值与表中逐个元素的关键字进行比较,直到两者相符,查找到所要找的元素为止。在最坏情况下,要查找的元素是表的最后一个元素或查找失败,这两种情况都需要将这个元素与表中的所有元素进行比较,因此比较次数为 n。11.下列常量中格式正确的是( )。(分数:2.00)A.$1.23E4B.“计算机“等级考试“CFalsD.2003/01/13 解析:解析 货币型常量用来表示货币值,其书写格式与数值型常量类似,但要加一个前置的美元符号($),货币型常量没有科学记数法形式,所以选项 A)是错误的。字符型常量也称为字符串,其表示方法是用半角单引号、双引号或方括号把字符串起来。这里的单引
32、号、双引号或方括号称为定界符。字符常量的定界符必须成对匹配,不能一边用单引号而另一边用双引号。如果某种定界符本身也是字符串内容,则需要用另一种定界符为该字符串定界。所以选项 B)是错误的。逻辑型数据只有逻辑真和逻辑假两个值。逻辑真的常量表示形式有:.T.、.t.、.Y.和.y.,逻辑假的常量表示形式有.F.、.f.、.N.和.n.,所以选项C)是错误的。12.下列叙述中错误的是( )。(分数:2.00)A.线性表是由 n个元素组成的一个有限序列B.线性表是一种线性结构C.线性表的所有结点有且仅有一个前件和后件 D.线性表可以是空表解析:解析 线性表是一种线性结构,由 n(n0)个元素组成,所以
33、线性表可以是空表。但是在线性表中,第一个结点没有前件,最后一个结点没有后件,其他结点有且只有一个前件和后件,所以 C是错误的。13.在 Visual FoxPro中,用来指明复选框的当前状态的属性是( )。(分数:2.00)A.Value B.CaptionC.StatusD.ControlSource解析:解析 一个复选框用于标记一个两值状态,如真或假。当处于选中状态时,复选框内显示一个对勾,否则复选框内空白。 复选框 Caption属性用来指定显示在复选框旁边的标题;复选框ControlSource指明复选框要绑定的数据源。如果没有设置 ControlSource属性,那么可以通过 Val
34、ue属性来设置或返回复选框的状态。14.在 Visual FoxPro中,嵌套查询是基于( )的查询(分数:2.00)A.2个关系B.3个关系C.多个关系 D.2个或 3个关系解析:解析 在 Visual FoxPro中,嵌套查询是基于多个关系的查询。这类查询所要求的结果出自一个关系,但相关的条件却涉及多个关系。15.在 Visual FoxPro中,关于视图的不正确的描述是( )。(分数:2.00)A.通过视图可以对表进行查询B.通过视图可以对表进行更新C.视图就是一个虚表D.视图就是一个数据库表 解析:解析 视图是根据基本表派生出来的,所以把它叫做虚拟表。在视图中,不但可以进行查询,而且在
35、 Visual FoxPro中,视图是可以更新的,但是这种更新是否反映在基本表中则取决于视图更新属性的设置。在关系数据库中,视图始终不曾真正地含有数据,它总是原来表的一个窗口。所以,虽然视图可以像表一样进行各种查询,但是插入、更新、删除操作在视图上却有一定的限制。一般情况下,当一个视图是由单个表导出时可以进行插入和更新操作,但不能进行删除操作;当视图是从多个表导出时,插入、更新和删除操作都不允许进行。16.ROUND(6.165,2)的函数值是( )。(分数:2.00)A.6.16B.6.17 C.6.20D.6.160解析:解析 ROUND 函数是四舍五入函数,它的格式是: ROUND(数值
36、表达式 1,数值表达式 1),功能是返回指定表达式在指定位置四舍五入后的结果。数值表达式 2指明四舍五入位置。若数值表达式大于等于 0,那么它表示的是要保留的小数位数;若数值表达式 2小于 0,那么它表示的是整数部分的舍入位数。在题干中,数值表达式 2为 2,大于 0,那么它表示的是要保留的小数位数为 2,所以函数值为 6.17。17.在 Visual FoxPro中,有下列程序: *程序名:TEST.PRG *调用方法:DO TEST SET TALK OFF PRIVATE X,Y X=“Visual FoxPro“ Y=“二级“ DO SUB WITH X ?Y+X RETURN *子程
37、序:SUB PROCEDURE SUB PARAMETERS X1 LOCAL X X=“Visual FoxPro DBMS 考试“ Y=“计算机等级“+Y RETURN 执行命令 DO TEST后,屏幕显示的结果为( )。(分数:2.00)A.二级 Visual FoxProB.计算机等级二级 Visual FoxPro考试C.二级 Visual FoxPro考试D.计算机等级二级 Visual FoxPro 解析:解析 主程序 TEST调用了子程序 SUB,调用过程中传递给子程序一个参数 X,由于在子程序 SUB中 X被定义为局部变量,它的作用域只是在 SUB中有效,所以 SUB 中的
38、X值不会影响到主程序 TEST中的X。子程序 SUB 执行完毕后,X 和 Y的值分别是(“Visual FoxPro DBMS 考试”和“计算机等级二级”,当返回到主程序 TEST时, X 的值为“Visual FoxPro”,Y 的值为“计算机等级二级”,所以屏幕显示的结果是“计算机等级二级 Visual FoxPro”。18.在“表单控件”工具栏中,下列哪个控件可以用来保存不希望用户改动的文本( )。(分数:2.00)A.标签 B.文本框C.命令按钮D.列表框解析:解析 标签控件用以显示文本,被显示的文本在 Caption 属性中指定,称为标题文本。标签的标题文本不能在屏幕上直接编辑修改,
39、但可以在代码中通过重新设置 Caption 属性间接修改。19.下列特征中不是面向对象方法的主要特征的是( )。(分数:2.00)A.多态性B.继承C.封装性D.模块化 解析:解析 面向对象设计方法与面向过程设计方法有本质的不同,其基本原理是:使用现实世界的概念抽象地思考问题从而自然地解决问题。其特点包括:分类性、多态性、封装性、模块独立性、继承和多态性等。模块化是结构化程序设计的特点。20.下列关于 SQL的超连接查询的描述中,说法不正确的是( )。(分数:2.00)A.Visual FoxPro支持超连接运算符“*=”和“=*” B.在 SQL中可以进行内部连接、左连接、右连接和全连接C.
40、SQL的超连接运算符“*=”代表左连接,“=*”代表右连接D.即使两个表中的记录不满足连接条件,都会在目标表或查询结果中出现,只是不满足条件的记录对应部分为空值解析:解析 在普通连接即内部连接中是把符合条件的记录包含到运算结果中,除此之外,还可以把不符合条件记录的部分属性也包含到运算结果中,这样的连接称为超连接。 在一般的 SQL中,超连接包括左连接“*=”和右连接“=*”。 左连接:在结果表中包含第 1个表中满足条件的所有记录;如果有在连接条件上匹配的元组,则第 2个表返回相应值,否则第 2个表返回空值。 右连接:在结果表中包含第 2个表中满足条件的所有记录;如果有在连接条件上匹配的元组,则
41、第 1个表返回相应值,否则第 1个表返回空值。 完全连接:先按左连接进行运算,再按右连接进行运算。对于元组中不符合连接条件的属性返回空值。 Visual FoxPro 不支持超连接运算符,但是有专门的连接运算语法格式。21.作为整个应用程序入口点的主程序至少应具有下列功能( )。(分数:2.00)A.初始化环境B.初始化环境、显示初始用户界面C.初始化环境、显示初始用户界面、控制事件循环D.初始化环境、显示初始用户界面、控制事件循环、退出时恢复环境 解析:解析 主程序是整个应用程序的入口点,主程序的任务包括设置应用程序的起始点;初始化环境;显示初始的用户界面;控制事件循环;当退出应用程序时,恢
42、复原始的开始环境。(31)(35)题使用下列数据表。“学生”表:学号 C(8),姓名 C(8),性别 C(2),系名(10), 出生日期 D“课程”表:课程编号 C(4),课程名称 C(12),开课系名 C(10)“成绩”表:学号 C(8),课程编号 C(4),成绩 I(分数:10.00)(1).检索每门课程的总分,查询结果中包括课程名和总分,正确的命令是( )。(分数:2.00)A.SELECT 课程名称,COUNT(成绩) AS 总分 FROM 课程,成绩; WHERE 课程.课程编号=成绩.课程编号; ORDER BY 成绩.课程编号B.SELECT 课程名称,COUNT(成绩) AS
43、总分 FROM 课程,成绩; WHERE 课程.课程编号=成绩.课程编号; GROUP BY 成绩.课程编号C.SELECT 课程名称,SUM(成绩) AS 总分 FROM 课程,成绩; WHERE 课程.课程编号=成绩.课程编号; ORDER BY 成绩.课程编号D.SELECT 课程名称,SUM(成绩) AS 总分 FROM 课程,成绩; WHERE 课程.课程编号=成绩.课程编号; GROUP BY 成绩.课程编号 解析:解析 进行 SQL简单计算查询时,还可以加上 GROUP BY 子句进行分组计算查询。 通常来说,一个计算函数的范围是满足 WHERE子句指定条件的所有记录。当加上 G
44、ROUP BY子句后,系统会将查询结果按指定列分成集合组。当一个计算函数和一个 GROUP BY子句一起使用时,计算函数的范围变为每组所有的记录。 本题通过“GROUP BY 成绩.课程编号”可以先将记录按“课程编号”分组,然后再通过函数“SUM(成绩)AS 总分”对每组记录求和,其中,通过 AS短语可以对进行计算的字段指定一个新的字段名。另外,COUNT()函数是记数函数,ORDER BY 是对查询结果进行排序的短语。(2).下列 SQL查询语句所表示的含义是( )。 SELECT 课程名称,开课系名,COUNT(学号) AS 选修人数; FROM 成绩,课程; WHERE 课程.课程编号=
45、成绩.课程编号; GROUP BY 课程名称; HAVING COUNT(*)3(分数:2.00)A.检索开课在 3门以上的开课系名、课程名称和选修人数B.检索选修了 3门课程以上的学生记录,显示结果包括课程名称、开课系名和选修人数C.检索每门课程中,有 3人以上选修该课程的记录,显示结果包括课程名称、开课系名和选修人数 D.检索选修人数最多的 3门课程的记录,显示结果包括课程名称、开课系名和选修人数解析:解析 在分组与计算查询语句中,使用 HAVING子句可以对分组进一步加以控制。用这个子句定义这些组所必须满足的条件,以便将其包含在结果中。 当 WHERE子句、GROUP BY 子句和 HA
46、VING子句同时出现的时候,首先执行 WHERE子句,从表中选择符合条件的行;然后由 GROUP BY子句对选取的行进行分组;再执行计算函数;最后执行 HAVING子句选取满足条件的分组。本题中,WHERE 子句中指定的是两表连接的条件;接着通过 GROUP BY子句指明按“课程名称”对记录分组;然后执行函数 cotter()统计分组后,每门课程中共有多少名学生选修了该课程;最后通过 HAVING子句进一步限定输出选修课程人数在 3人以上的课程信息。(3).为“成绩”表中的“成绩”字段定义有效性检查及错误信息的提示,要求当成绩大于 100 分时,提示“成绩不能超过 100分”的信息,正确的命令
47、是( )。(分数:2.00)A.ALTER TABLE 成绩 ALTER 成绩; FOR CHECK 成绩=100 ERROR“成绩不能超过 100分“B.ALTER TABLE 成绩 ALTER 成绩; (WHERE CHECK 成绩=100 ERROR“成绩不能超过 100分“)C.ALTER TABLE 成绩 ALTER 成绩; SET CHECK 成绩=100 ERROR“成绩不能超过 100分“ D.ALTER TABLE 成绩 ALTER 成绩; (SET CHECK 成绩=100 ERROR“成绩不能超过 100分“)解析:解析 利用 SQL命令可以对基本表的结构进行修改,利用以
48、下命令可以修改表结构、定义有效性规则: ALTER TABLE表名 ALTERCOLUMN字段名 1NULL|NOT NULL SET DEFAULT表达式 SET CHECK逻辑表达式ERROR字符型文本信息 |RENAME COLUMN字段名 2TO字段名 3 其中,SETCHECK逻辑表达式ERROR字符型文本信息可以用来重新设置指定字段的合法值和错误信息提示。(4).利用 SQL派生一个包含“课程名称”、“姓名”和“成绩”的视图,要求按“课程名称”升序排序,正确的命令是( )。(分数:2.00)A.CREATE VIEW viewl AS; (SELECT 课程.课程名称,学生.姓名,成绩.成绩; FROM 课程 INNER JOIN 成绩; INNER JOIN 学生; ON 成绩.学号=学生.学号; ON 课程.课程编号=成绩.课程编号; GROUP BY 课程名称)B.CREATE VIEW view1 AS; (S