1、二级 VISUAL+FOXPRO 笔试-31 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(1)(35)题每题 2 分,共 7(总题数:35,分数:70.00)1.下列关于参数传递的说法中,正确的是(分数:2.00)A.当实参的数量少于形参的数量时,多余的形参初值取逻辑假FB.当实参的数量大于形参的数量时,多余的实参被忽略C.实参和形参的数量必须相等D.答案 A、B 均正确2.非空的循环单链表 head 的尾结点(由 p 所指向),满足(分数:2.00)A.pnext=NULLB.p=NULLC.pnext=headD.P=head3.已知数据表 A 中每个元素距其最终位置
2、不远,为节省时间,应采用的算法是(分数:2.00)A.堆排序B.直接插入排序C.快速排序D.直接选择排序4.对于表单及控件的绝大多数属性,其类型通常是固定的,通常 Caption 属性只用来接收(分数:2.00)A.数值型数据B.字符型数据C.逻辑型数据D.以上数据类型都可以5.有 A、B、C 三个数据表,若已建立了 AB 的关联,需要再建立 BC 的关联,形成 ABC 的关联,则(分数:2.00)A.必须使用带 ADDITIVE 子句的 SET RELATION 命令B.直接利用 SET RELATION 命令进行关联C.在保持 AB 关联的基础上不能再建立 BC 关联D.在保持 AB 关联
3、的基础上不能在建立的 BC 关联,但可以建立 AC 关联6.数据库的故障恢复一般是由(分数:2.00)A.数据流图完成的B.数据字典完成的C.DBA 完成的D.PAD 图完成的7.在 Visual FoxPro 中设置参照完整性时,要设置成:当更改父表中的主关键字段或候选关键字段时,自动更新相关子表中的对应值,应在“更新规则”选项卡中选择(分数:2.00)A.忽略B.限制C.级联D.忽略或限制8.清除内存中第一个字符为“A”的内存变量,应使用命令(分数:2.00)A.RELEASE MEMORYB.RELEASE ALL LIKEA*C.RELEASE MEMORY LIKE A*D.CLEA
4、R MEMORY LIKE A*9.将关系看成一张二维表,则下列叙述中不正确的是(分数:2.00)A.表中不允许出现相同的行B.表中不允许出现相同的列C.表中的行次序可以交换D.表中的列次序不可以交换10.下列关于创建报表的方法中,错误的是(分数:2.00)A.使用报表设计器可以创建自定义报表B.使用报表向导可以创建报表C.使用快速报表可以创建简单规范的报表D.利用报表向导创建的报表是快速报表11.(32)(35)题中使用如下的学生表、课程表和成绩表。学生(学号 C(4),姓名 C(8),性别 C(2),出生日期 D,院系 C(8)课程(课程编号(4),课程名 C(10),开课院系 C(8)成
5、绩(学号 C(4),课程编号 C(4),成绩 1)查询每门课程的平均分,要求得到的信息包括课程名和平均分,正确的命令是(分数:2.00)A.SELECT 课程名,AVG(成绩)FROM 课程,成绩;WHERE 课程课程编号:成绩=课程编号;GROUP BY 课程名B.SELECT 课程名,SUM(成绩)FROM 课程,成绩;WHERE 课程课程编号=成绩课程编号;GROUP BY 课程名C.SELECT 课程名,AVG(成绩)AS 平均分 FROM 课程,成绩;WHERE 课程课程编号=成绩课程编号;GROUP BY 课程编号D.SELECT 课程名,SUM(成绩)AS 平均分 FROM 课程
6、,成绩;WHERE 课程课程编号:成绩=课程编号;GROUP BY 课程编号12.假定系统日期是 2004 年 3 月 15 日,则执行命令 PI=MOD(YEAR(DATE( )-2000,10)后,PI 的值是(分数:2.00)A.4B.-4C.032004D.013.在查询设计器中,选定“杂项”选项卡中的“无重复记录”复选框,等效于执行 SQL SELECT 语句中的(分数:2.00)A.WHEREB.JOIN ONC.ORDER BYD.DISTINCT14.下列关于过程文件的说法中,错误的是(分数:2.00)A.过程文件的建立需使用 MODIFY COMMAND 命令B.过程文件的默
7、认扩展名为PRGC.在调用过程文件中的过程之前不必打开过程文件D.过程文件只包含过程,可以被其他程序所调用15.查询学生表中学号(字符型,长度为 2)尾数字符是“1”的错误命令是(分数:2.00)A.SELECT * FROM 学生表 WHERE“1“$学号B.SELECT * FROM 学生表 WHERE RIGHT(学号,1)=“1“C.SELECT * FROM 学生表 WHERE SUBSTR(学号,2)=“1“D.SELECT * FROM 学生表 WHERE SUBSTR(学号,2,1)=“1“16.检索尚未确定的供应商的定单号,正确的命令是(分数:2.00)A.SELECT *
8、FROM 订购单 WHERE 供应商号 NULLB.SELECT * FROM 订购单 WHERE 供应商号=NULLC.SELECT * FROM 订购单 WHERE 供应商号 IS NULLD.SELECT * FROM 订购单 WHERE 供应商号 IS NOT NULL17.为成绩表中的成绩字段定义有效性检查及错误信息的提示,正确的命令是(分数:2.00)A.ALTER TABLE 成绩表 ALTER 成绩;CHECK 成绩0 ERROR 成绩不能为负B.ALTER TABLE 成绩表 ALTER 成绩;SET CHECK 成绩0 ERROR 成绩不能为负C.ALTER TABLE 成
9、绩表 ALTER 成绩;CHECK 成绩0 ERROR“成绩不能为负“D.ALTER TABLE 成绩表 ALTER 成绩;SET CHECK 成绩0 ERROR“成绩不能为负“18.下列关于视图的操作中,错误的是(分数:2.00)A.在数据库中使用 USE 命令打开或关闭视图B.在“浏览器”窗口中可以显示或修改视图中的数据C.视图不能作为文本框、表格等控件的数据源D.可以使用 SQL 语句操作视图19.ON 课程课程编号=成绩课程编号(分数:2.00)A.B.C.D.20.对表进行水平方向和垂直方向的分割,分别对应的关系运算是(分数:2.00)A.选择和投影B.投影和选择C.选择和联接D.投
10、影和联接21.在软件生产过程中,需求信息的给出是(分数:2.00)A.程序员B.项目管理者C.软件分析设计人员D.软件用户22.NULL 是指(分数:2.00)A.0B.空格C.未知的值或无任何值D.空字符串23.在 Visual FoxPro 中,基类的最小事件集包含的事件是(分数:2.00)A.Load、Destroy、ClickB.Load、Error、UnloadC.Init、Load、UnloadD.Init、Error、Destroy24.下列关于自由表的说法中,正确的是(分数:2.00)A.可以为表中的字段指定标题和添加注释B.可以指定表中字段的默认值和输入掩码C.只能建立候选索
11、引、惟一索引和普通索引D.支持主关键字、参照完整性和表之间的联系25.下列工具中为需求分析常用工具的是(分数:2.00)A.PADB.PFDC.N-SD.DFD26.下列说法中,不属于数据模型所描述的内容的是(分数:2.00)A.数据结构B.数据操作C.数据查询D.数据约束27.设有如下程序文件:SET TALK OFFCLEARDIMENSION a(2,3)i=1DO WHILE i=2j=1DO WHILE j=3a(i,)=i+j?a(i,j)j=j+1ENDDO?i=i+1ENDDOSET TALK ONRETURN执行此程序,程序的运行结果为(分数:2.00)A.2 3 43 4
12、5B.1 2 33 4 5C.1 2 32 4 6D.2 3 44 5 628.在成绩表中要求按“总分”降序排列,并查询前 3 名学生的记录,正确的命令是(分数:2.00)A.SELECT * TOP 3 FROM 成绩表;WHERE 总分 DESCB.SELECT * TOP 3 FROM 成绩表;FOR 总分 DESCC.SELECT * TOP 3 FROM 成绩表;GROUP BY 总分 DESCD.SELECT * TOP 3FROM 成绩表;ORDER BY 总分 DESC29.下列不属于结构化分析的常用工具的是(分数:2.00)A.数据流图B.数据字典C.判定树D.PAD 图30
13、.有如下 SQL 语句:SELECT 课程名,开课院系,COUNT(学号)AS 选修人数;FROM 成绩,课程WHERE 课程课程编号=成绩课程编号;GROUP BY 课程名称 HAVING COUNT( * )=2该语句所表示的含义是(分数:2.00)A.检索选修两门课程以上的学生记录,显示课程名、开课院系和选修人数B.检索选修两门课程以上(包括两门)的学生记录,显示课程名、开课院系和选修人数C.检索选修两门课程以下的学生记录,显示课程名、开课院系和选修人数D.检索选修两门课程以下(包括两门)的学生记录,显示课程名、开课院系和选修人数31.对建立良好的程序设计风格,下面描述正确的是(分数:2
14、.00)A.程序应简单、清晰、可读性好B.符号名的命名只要符合语法C.充分考虑程序的执行效率D.程序的注释可有可无32.设 X=“abcd“,Y=“ab“,在 SET EXACT ON 的状态下,下列表达式值为假的是(分数:2.00)A.NOT(X=Y)。OR(Y$“XYZ“)B.NOT(X$“XYZ“)AND(XY)C.NOT(XY)D.NOT(X=Y)33.下列关于连编应用程序的说法中,正确的是(分数:2.00)A.连编项目成功后,再进一步进行连编应用程序,可保证连编的正确性B.可随时连编应用程序C.应用程序文件和可执行文件都可以在 Windows 中运行D.应用程序文件和可执行文件都必须
15、在 Visual FoxPro 中运行34.下列叙述中正确的是(分数:2.00)A.线性表是线性结构B.栈与队列是非线性结构C.线性链表是非线性结构D.二叉树是线性结构35.下列关于组合框的说法中,正确的是(分数:2.00)A.组合框中,只有一个条目是可见的B.组合框不提供多重选定的功能C.组合框没有 MnltiSelect 属性的设置D.以上说法均正确二、填空题(每空 2 分,共 30 分)(总题数:14,分数:30.00)36.冒泡排序算法在最好的情况下的元素交换次数为 【1】 。(分数:2.00)填空项 1:_37.在最坏情况下,堆排序需要比较的次数为 【2】 。(分数:2.00)填空项
16、 1:_38.若串 s=“Math Types“则其子串的数目是 【3】 。(分数:2.00)填空项 1:_39.软件开发环境是全面支持软件开发全过程的 【4】 集合。(分数:2.00)填空项 1:_40.关系数据库的关系演算语言是以 【5】 为基础的 DML 语言。(分数:2.00)填空项 1:_41.在命令窗口定义了一个空的一维数组 S(5),在命令窗口输入?S(1)的结果为 【6】 。(分数:2.00)填空项 1:_42.要修改指定的数据表结构,首先应该打开该数据表,然后利用 【7】 命令进入表设计器修改数据表结构。(分数:2.00)填空项 1:_43.在 Visual FoxPro 的
17、字段类型中,系统默认的日期型数据占 【8】 个字节,逻辑型字段占 【9】 个字节。(分数:4.00)填空项 1:_44.在 Visual FoxPro 中,为了建立参照完整性,首先必须建立表之间的 【10】 。(分数:2.00)填空项 1:_45.使用 【11】 命令可以定义一个过程的开始。(分数:2.00)填空项 1:_46.确定列表框内的某个条目是否被选定,应使用属性是 【12】 。(分数:2.00)填空项 1:_47.检索当前“职工表”中,全部姓“李”的职工记录,SQL 语句为:SELECT * FROM 职工表 WHERE 姓名 【13】 “李 * “(分数:2.00)填空项 1:_4
18、8.在 SQL 语句中,要删除仓库表中仓库号的字段值是 WH1 的记录,可利用命令:【14】 FROM 仓库 WHERE 仓库号=“WH1“(分数:2.00)填空项 1:_49.当前目录下有“学生表”文件,表中有字段“学号 C(2)”,现要将“学号”字段的宽度由 2 改为 4,则语句为:ALTER TABLE 学生表 【15】 (分数:2.00)填空项 1:_二级 VISUAL+FOXPRO 笔试-31 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(1)(35)题每题 2 分,共 7(总题数:35,分数:70.00)1.下列关于参数传递的说法中,正确的是(分数:2.00)A.
19、当实参的数量少于形参的数量时,多余的形参初值取逻辑假F B.当实参的数量大于形参的数量时,多余的实参被忽略C.实参和形参的数量必须相等D.答案 A、B 均正确解析:【解析】形参的数目不能少于实参的数目,否则系统会产生运行时错误;当形参的数量大于实参的数量时?,多余的形参初值取逻辑假F。2.非空的循环单链表 head 的尾结点(由 p 所指向),满足(分数:2.00)A.pnext=NULLB.p=NULLC.pnext=head D.P=head解析:【解析】循环链表就是将链表的最后一个结点指向链表头结点(或第一个结点),即pnext=head。3.已知数据表 A 中每个元素距其最终位置不远,
20、为节省时间,应采用的算法是(分数:2.00)A.堆排序B.直接插入排序 C.快速排序D.直接选择排序解析:【解析】当数据表 A 中每个元素距其最终位置不远,说明数据表 A 按关键字值基本有序,在待排序序列基本有序的情况下,采用插入排序所用时间最少,故答案为选项 B) 。4.对于表单及控件的绝大多数属性,其类型通常是固定的,通常 Caption 属性只用来接收(分数:2.00)A.数值型数据B.字符型数据 C.逻辑型数据D.以上数据类型都可以解析:【解析】在表单及控件的属性中,Caption 属性是一个标题文本,它只能用来接收字符型数据。5.有 A、B、C 三个数据表,若已建立了 AB 的关联,
21、需要再建立 BC 的关联,形成 ABC 的关联,则(分数:2.00)A.必须使用带 ADDITIVE 子句的 SET RELATION 命令 B.直接利用 SET RELATION 命令进行关联C.在保持 AB 关联的基础上不能再建立 BC 关联D.在保持 AB 关联的基础上不能在建立的 BC 关联,但可以建立 AC 关联解析:【解析】使用 SET RELATION 命令时,若选用了 ADDITIVE 短语则允许在保留已建立关联的基础上建立另一个关联。若缺省此项,则在建立新的关联时,自动取消已经建立的关联。6.数据库的故障恢复一般是由(分数:2.00)A.数据流图完成的B.数据字典完成的C.D
22、BA 完成的 D.PAD 图完成的解析:【解析】一旦数据库中的数据遭受破坏,需要及时进行恢复,RDBMS 一般都提供此种功能,并由DBA 负责执行故障恢复功能。7.在 Visual FoxPro 中设置参照完整性时,要设置成:当更改父表中的主关键字段或候选关键字段时,自动更新相关子表中的对应值,应在“更新规则”选项卡中选择(分数:2.00)A.忽略B.限制C.级联 D.忽略或限制解析:【解析】更新规则包括“级联”、“限制”和“忽略”3 个选项,其中“级联”是指用新的关键字值更新子表中的所有相关记录。8.清除内存中第一个字符为“A”的内存变量,应使用命令(分数:2.00)A.RELEASE ME
23、MORYB.RELEASE ALL LIKEA* C.RELEASE MEMORY LIKE A*D.CLEAR MEMORY LIKE A*解析:【解析】RELEASE MEMORY 和 CLEAR MEMORY 只是清除公有和私有变量,不能清除系统变量。要释放所有内存变量应使用 RELEASE ALL。9.将关系看成一张二维表,则下列叙述中不正确的是(分数:2.00)A.表中不允许出现相同的行B.表中不允许出现相同的列C.表中的行次序可以交换D.表中的列次序不可以交换 解析:【解析】根据规范化理论依据,对关系的要求包括:列是同质的,即每一列中分量是同类型的数据,来自同一个域,每列称为一个属
24、性,行或列的顺序可以任意排列,而不影响各数据项的关系。10.下列关于创建报表的方法中,错误的是(分数:2.00)A.使用报表设计器可以创建自定义报表B.使用报表向导可以创建报表C.使用快速报表可以创建简单规范的报表D.利用报表向导创建的报表是快速报表 解析:【解析】在 Visual FoxPro 中,创建报表的方法通常有 3 种:一是使用报表设计器创建自定义报表;二是使用报表向导创建报表;三是使用快速报表创建简单规范的报表。而快速报表是在报表设计器中完成的。11.(32)(35)题中使用如下的学生表、课程表和成绩表。学生(学号 C(4),姓名 C(8),性别 C(2),出生日期 D,院系 C(
25、8)课程(课程编号(4),课程名 C(10),开课院系 C(8)成绩(学号 C(4),课程编号 C(4),成绩 1)查询每门课程的平均分,要求得到的信息包括课程名和平均分,正确的命令是(分数:2.00)A.SELECT 课程名,AVG(成绩)FROM 课程,成绩;WHERE 课程课程编号:成绩=课程编号;GROUP BY 课程名B.SELECT 课程名,SUM(成绩)FROM 课程,成绩;WHERE 课程课程编号=成绩课程编号;GROUP BY 课程名C.SELECT 课程名,AVG(成绩)AS 平均分 FROM 课程,成绩;WHERE 课程课程编号=成绩课程编号;GROUP BY 课程编号
26、D.SELECT 课程名,SUM(成绩)AS 平均分 FROM 课程,成绩;WHERE 课程课程编号:成绩=课程编号;GROUP BY 课程编号解析:【解析】求平均分需要使用 AVG 函数。由于查询每门课程的平均分,所以需要对课程进行分组,由于课程名可能出现重名,因此分组依据为课程编号。使用 AS 短语,可将“成绩”字段名重新命名为“平均分”作为新的字段名,用于显示查询结果。12.假定系统日期是 2004 年 3 月 15 日,则执行命令 PI=MOD(YEAR(DATE( )-2000,10)后,PI 的值是(分数:2.00)A.4 B.-4C.032004D.0解析:【解析】YEAR( )
27、函数用于测试日期的年份,其结果是一个数值型数据。本题中,利用求出的年份经过数值运算后,再利用 MOD( )函数求 4 和 10 的余,MOD( )函数功能为返回两个数值相除后的余数。是被除数,是除数。余数的正、负号与除数相同。如果被除数与除数同号,那么函数值为两数相除的余数;如果异号,则函数值为两数相除的余数在加上除数的值。13.在查询设计器中,选定“杂项”选项卡中的“无重复记录”复选框,等效于执行 SQL SELECT 语句中的(分数:2.00)A.WHEREB.JOIN ONC.ORDER BYD.DISTINCT 解析:【解析】“杂项”选项卡中的“无重复记录”复选框是用来指定查询结果中不
28、能包含重复项,对应于 SQL 语句中的 DIS-TINCT 短语。14.下列关于过程文件的说法中,错误的是(分数:2.00)A.过程文件的建立需使用 MODIFY COMMAND 命令B.过程文件的默认扩展名为PRGC.在调用过程文件中的过程之前不必打开过程文件 D.过程文件只包含过程,可以被其他程序所调用解析:【解析】建立和修改过程文件都可以使用 MODIFY COMMAND 命令,默认的扩展名为PRG。PROCEDURE 命令表示一个过程的开始,并命名过程,若过程文件只包含过程,调用过程文件中的过程之前必须打开过程文件,可使用 SETPROCEDURE TO 打开该过程文件。15.查询学生
29、表中学号(字符型,长度为 2)尾数字符是“1”的错误命令是(分数:2.00)A.SELECT * FROM 学生表 WHERE“1“$学号 B.SELECT * FROM 学生表 WHERE RIGHT(学号,1)=“1“C.SELECT * FROM 学生表 WHERE SUBSTR(学号,2)=“1“D.SELECT * FROM 学生表 WHERE SUBSTR(学号,2,1)=“1“解析:【解析】函数 SUBSTR( )是从源字符串取子字符串函数,需要指明位置和个数,如果不指明个数则取到最后;RIGHT( )是从源字符串右侧取指定个数的子字符串;$是字符串包含测试运算符。16.检索尚未
30、确定的供应商的定单号,正确的命令是(分数:2.00)A.SELECT * FROM 订购单 WHERE 供应商号 NULLB.SELECT * FROM 订购单 WHERE 供应商号=NULLC.SELECT * FROM 订购单 WHERE 供应商号 IS NULL D.SELECT * FROM 订购单 WHERE 供应商号 IS NOT NULL解析:【解析】进行空值查询时,要使用“IS NULL”,而“=NULL”是无效的,因为空值不是一个确定的值,所以不能使用“=”这样的运算符进行比较。17.为成绩表中的成绩字段定义有效性检查及错误信息的提示,正确的命令是(分数:2.00)A.ALT
31、ER TABLE 成绩表 ALTER 成绩;CHECK 成绩0 ERROR 成绩不能为负B.ALTER TABLE 成绩表 ALTER 成绩;SET CHECK 成绩0 ERROR 成绩不能为负C.ALTER TABLE 成绩表 ALTER 成绩;CHECK 成绩0 ERROR“成绩不能为负“D.ALTER TABLE 成绩表 ALTER 成绩;SET CHECK 成绩0 ERROR“成绩不能为负“ 解析:【解析】定义和修改表的有效性规则和错误信息提示,可使用如下命令格式:ALTER TABLE TableName1 ALTERCOLUMNFieldName2NULL|NOTNULLSET C
32、HECK lExpression2ERROR cMessage Text2 18.下列关于视图的操作中,错误的是(分数:2.00)A.在数据库中使用 USE 命令打开或关闭视图B.在“浏览器”窗口中可以显示或修改视图中的数据C.视图不能作为文本框、表格等控件的数据源 D.可以使用 SQL 语句操作视图解析:【解析】视图允许以下操作:在数据库中使用 USE 命令打开或关闭视图,在“浏览器”窗口中显示或修改视图中的记录;使用 SQL 语句操作视图,在文本框、表格控件、表单或报表中使用视图作为数据源。19.ON 课程课程编号=成绩课程编号(分数:2.00)A.B.C.D. 解析:【解析】在 SQL
33、的数据定义功能中,可以对视图进行定义,语句格式为:CREATE VIEWv_ view_name (column_name,column_name)AS select_statement20.对表进行水平方向和垂直方向的分割,分别对应的关系运算是(分数:2.00)A.选择和投影 B.投影和选择C.选择和联接D.投影和联接解析:【解析】选择是从关系中找出满足指定条件元组的操作,是从行的角度进行的运算,即从水平方向抽取记录;投影是从关系中指定若干个属性组成新的关系,是从列的角度进行的运算,相当于对关系进行垂直分解。21.在软件生产过程中,需求信息的给出是(分数:2.00)A.程序员B.项目管理者C
34、.软件分析设计人员D.软件用户 解析:【解析】软件需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。22.NULL 是指(分数:2.00)A.0B.空格C.未知的值或无任何值 D.空字符串解析:【解析】此题属于记忆性的题目,NULL 是指未知的值或无任何值。23.在 Visual FoxPro 中,基类的最小事件集包含的事件是(分数:2.00)A.Load、Destroy、ClickB.Load、Error、UnloadC.Init、Load、UnloadD.Init、Error、Destroy 解析:【解析】事件是一种由系统预先定义而由用户或系统发出的动作。Visual F
35、oxPro 中,基类的最小事件集包括 Init,Error,Destroy。24.下列关于自由表的说法中,正确的是(分数:2.00)A.可以为表中的字段指定标题和添加注释B.可以指定表中字段的默认值和输入掩码C.只能建立候选索引、惟一索引和普通索引 D.支持主关键字、参照完整性和表之间的联系解析:【解析】本题中选项 A),B),D) 都是数据库表的特点,在自由表中无法实现这些功能,且只能建立候选索引、惟一索引和普通索引 3 种索引类型。25.下列工具中为需求分析常用工具的是(分数:2.00)A.PADB.PFDC.N-SD.DFD 解析:【解析】需求分析中的常用工具有 PAD、PFD 及 N-
36、S 等,而 DFD(数据流图)为结构化分析工具。26.下列说法中,不属于数据模型所描述的内容的是(分数:2.00)A.数据结构B.数据操作C.数据查询 D.数据约束解析:【解析】数据模型所描述的内容有 3 个部分,它们是数据结构、数据操作和数据约束。其中,数据模型中的数据结构主要描述数据的类型、内容、性质,以及数据库的联系等;数据操作主要是描述在相应数据结构上的操作类型与操作方式。27.设有如下程序文件:SET TALK OFFCLEARDIMENSION a(2,3)i=1DO WHILE i=2j=1DO WHILE j=3a(i,)=i+j?a(i,j)j=j+1ENDDO?i=i+1E
37、NDDOSET TALK ONRETURN执行此程序,程序的运行结果为(分数:2.00)A.2 3 43 4 5 B.1 2 33 4 5C.1 2 32 4 6D.2 3 44 5 6解析:【解析】该程序首先定义一个二维数组 a(2,3),然后利用 DO WHILE-ENDDO 嵌套循环将每个数组元素赋值,即将该数组元素的行下标和列下标之和赋值给对应元素。28.在成绩表中要求按“总分”降序排列,并查询前 3 名学生的记录,正确的命令是(分数:2.00)A.SELECT * TOP 3 FROM 成绩表;WHERE 总分 DESCB.SELECT * TOP 3 FROM 成绩表;FOR 总分
38、 DESCC.SELECT * TOP 3 FROM 成绩表;GROUP BY 总分 DESCD.SELECT * TOP 3FROM 成绩表;ORDER BY 总分 DESC 解析:【解析】使用 SQL SELECT 可以对查询结果进行排序,排序的短语是 ORDER BY。选项 A) 和 B) 属于语法错误,选项 C) 中的 GROUP BY 短语的功能是对查询结果进行分组。使用 SELECT-SQL 可以实现显示部分结果,需结合 TOP 短语。29.下列不属于结构化分析的常用工具的是(分数:2.00)A.数据流图 B.数据字典C.判定树D.PAD 图解析:【解析】结构化分析的常用工具有数据
39、流图、数据字典、判定树和判定表。而 PAD 图是常见的过程设计工具中的图形设计。30.有如下 SQL 语句:SELECT 课程名,开课院系,COUNT(学号)AS 选修人数;FROM 成绩,课程WHERE 课程课程编号=成绩课程编号;GROUP BY 课程名称 HAVING COUNT( * )=2该语句所表示的含义是(分数:2.00)A.检索选修两门课程以上的学生记录,显示课程名、开课院系和选修人数B.检索选修两门课程以上(包括两门)的学生记录,显示课程名、开课院系和选修人数C.检索选修两门课程以下的学生记录,显示课程名、开课院系和选修人数D.检索选修两门课程以下(包括两门)的学生记录,显示
40、课程名、开课院系和选修人数 解析:【解析】利用 GROUP BY 短语根据课程名字段,分组统计选修课程在 2 门以下(包括 2 门)的学生记录,显示课程名、开课院系和选修人数。其中 HAVING 字句用于选课门数的判断。31.对建立良好的程序设计风格,下面描述正确的是(分数:2.00)A.程序应简单、清晰、可读性好 B.符号名的命名只要符合语法C.充分考虑程序的执行效率D.程序的注释可有可无解析:【解析】程序设计应该简单易懂,语句构造应该简单直接,不应该为提高效率而把语句复杂化。32.设 X=“abcd“,Y=“ab“,在 SET EXACT ON 的状态下,下列表达式值为假的是(分数:2.0
41、0)A.NOT(X=Y)。OR(Y$“XYZ“)B.NOT(X$“XYZ“)AND(XY)C.NOT(XY) D.NOT(X=Y)解析:【解析】选项 C) 中 XY 为真,在经过逻辑运算NOT之后,表达式的值就为假。$是一个字符串包含测试运算符。33.下列关于连编应用程序的说法中,正确的是(分数:2.00)A.连编项目成功后,再进一步进行连编应用程序,可保证连编的正确性 B.可随时连编应用程序C.应用程序文件和可执行文件都可以在 Windows 中运行D.应用程序文件和可执行文件都必须在 Visual FoxPro 中运行解析:【解析】连编项目获得成功后,运行该项目,在程序运行正确后,可最终连
42、编成一个应用程序文件。连编后的应用程序文件需要在 Visual FoxPro 中运行;可执行文件能在 Windows 环境下运行,也可在Visual FoxPro 中运行。连编应用程序必须在项目管理器中设置好主文件,才可进行连编。34.下列叙述中正确的是(分数:2.00)A.线性表是线性结构 B.栈与队列是非线性结构C.线性链表是非线性结构D.二叉树是线性结构解析:【解析】线性表是一种线性结构,数据元素在线性表中的位置只取决于它们自己的序号,即数据元素之间的相对位置是线性的;栈、队列、线性链表实际上也是线性表,故也是线性结构;树是一种简单的非线性结构。35.下列关于组合框的说法中,正确的是(分
43、数:2.00)A.组合框中,只有一个条目是可见的B.组合框不提供多重选定的功能C.组合框没有 MnltiSelect 属性的设置D.以上说法均正确 解析:【解析】组合框中只有一个条目是可见的,组合框不提供多重选定的功能,并且,其中没有Multiselect 属性的设置。二、填空题(每空 2 分,共 30 分)(总题数:14,分数:30.00)36.冒泡排序算法在最好的情况下的元素交换次数为 【1】 。(分数:2.00)填空项 1:_ (正确答案:【1】0)解析:【解析】根据冒泡排序算法思想可知,若待排序的初始序列为“正序”序列,则只需进行一趟排序,在排序过程中进行 n-1 次关键字间的比较,且
44、不移动和交换记录,这种情况是冒泡排序的最好情况,故冒泡排序算法在最好的情况下的元素交换次数为 0。37.在最坏情况下,堆排序需要比较的次数为 【2】 。(分数:2.00)填空项 1:_ (正确答案:【2】O(nlog 2n))解析:【解析】在最坏情况下,冒泡排序所需要的比较次数为 n(n-1)/2;简单插入排序所需要的比较次数为 n(n-1)/2;希尔排序所需要的比较次数为 O(n1.5);堆排序所需要的比较次数为 O(nlog2n)。38.若串 s=“Math Types“则其子串的数目是 【3】 。(分数:2.00)填空项 1:_ (正确答案:【3】46)解析:【解析】串 s 中共有 9
45、个字符,由于串中字符各不相同,则其子串中有 0 个字符的 1 个(空串),1个字符的 9 个,2 个字符的 8 个,3 个字符的 7 个,4 个字符的 6 个,5 个字符的 5 个,6 个字符的 4 个,7 个字符的 3 个,8 个字符的 2 个,9 个字符的 1 个,共有 1+2+3+4+5+6+7+8+9+1=46。39.软件开发环境是全面支持软件开发全过程的 【4】 集合。(分数:2.00)填空项 1:_ (正确答案:【4】软件工具)解析:40.关系数据库的关系演算语言是以 【5】 为基础的 DML 语言。(分数:2.00)填空项 1:_ (正确答案:【5】谓词演算)解析:【解析】关系数
46、据库中的关系演算包括元组关系演算和域关系演算。二者都是由原子公式组成的公式。而这些关系演算都是以数理逻辑中的谓词演算为基础的。41.在命令窗口定义了一个空的一维数组 S(5),在命令窗口输入?S(1)的结果为 【6】 。(分数:2.00)填空项 1:_ (正确答案:【6】F)解析:【解析】系统在定义一个新的数组后,会自动给每个数组中的每个元素赋以一个逻辑值:逻辑假F,因此利用“?”显示数组中的每个元素值都为F。42.要修改指定的数据表结构,首先应该打开该数据表,然后利用 【7】 命令进入表设计器修改数据表结构。(分数:2.00)填空项 1:_ (正确答案:【7】MODIFY STRUCTURE
47、)解析:【解析】修改数据表结构首先应该使用 USE 命令打开相应的数据表文件,然后使用 MODIFY STRUCTURE 命令打开表设计器,进行数据表结构的修改。43.在 Visual FoxPro 的字段类型中,系统默认的日期型数据占 【8】 个字节,逻辑型字段占 【9】 个字节。(分数:4.00)填空项 1:_ (正确答案:【8】8【9】1)解析:【解析】在 Visual FoxPro 中,日期型占 8 个字节,逻辑型占 1 个字节,备注型和通用型占 4 个字节,都是在设定数据类型时由系统默认的。44.在 Visual FoxPro 中,为了建立参照完整性,首先必须建立表之间的 【10】
48、。(分数:2.00)填空项 1:_ (正确答案:【10】联系)解析:【解析】参照完整性是关系数据库管理系统的一个很重要的功能。在 Visual FoxPro 中为了建立参照完整性,必须首先建立表之间的联系。45.使用 【11】 命令可以定义一个过程的开始。(分数:2.00)填空项 1:_ (正确答案:【11】PROCEDURE(或 FUNCTION))解析:【解析】在用 PROCEDURE|FUNCTION 命令定义一个过程的开始,定义的过程名必须是以字母或下划线开头,在过程名中可以包含数字、字母和下划线。46.确定列表框内的某个条目是否被选定,应使用属性是 【12】 。(分数:2.00)填空项 1:_