1、二级 VISUAL+FOXPRO-124 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:46,分数:100.00)1.在下面的 Visual FoxPro 表达式中,运算结果不为逻辑真的是(分数:2.00)A.EMPTY(SPACE(0)B.LIKE(“xy*“,“xyz“)C.AT(“xy“,“abcxyz“)D.ISNULL(.NULL.)2.如果内存变量和字段变量均有变量名“姓名”,那么引用内存变量的正确方法是(分数:2.00)A.姓名B.M姓名C.姓名D.“姓名“3.在 Visual FoxPro 中以下叙述正确的是(分数:2.00)A.表也称作表单B.一个
2、数据库中的所有表文件存储在一个物理文件中C.数据库文件的扩展名是.dbfD.数据库文件不存储用户数据4.在当前表中,查找第 2 个男同学的记录,应使用命令(分数:2.00)A.LOCATE FOR 性别=“男“NEXT 2B.LOCATE FOR 性别!=“男“NEXT 2C.LOCATE FOR 性别!=“男“SKIP 2D.LOCATE FOR 性别=“男“CONTINUE5.在 Visual FoxPro 中,对于字段值为空值(NULL)叙述正确的是(分数:2.00)A.空值等于空字符串B.Visual FoxPro 不支持空值C.空值表示字段还没有确定值D.空值等同于数值 06.以下有
3、关 SELECT 短语的叙述中错误的是(分数:2.00)A.SELECT 短语中可以使用别名B.SELECT 短语中只能包含表中的列及其构成的表达式C.SELECT 短语规定了结果集中的列顺序D.如果 FROM 短语引用的两个表有同名的列,则 SELECT 短语引用它们时必须使用表名前缀加以限定7.把表中“学历”字段的有效性规则取消,正确的 SQL 语句是(分数:2.00)A.ALTER TABLE 学生 ALTER 学历 DROP CHECKB.ALTER TABLE 学生 DELETE 学历 DROP CHECKC.ALTER TABLE 学生 DELETE CHECK 学历D.ALTER
4、 TABLE 学生 DROP CHECK 学历8.要使“产品”表中所有产品的单价上浮 8%,正确的 SQL 命令是(分数:2.00)A.UPDATE 产品 SET 单价=单价+单价*8%FOR ALLB.UPDATE 产品 SET 单价=单价*1.08 FOR ALLC.UPDATE 产品 SET 单价=单价+单价*8%D.UPDATE 产品 SET 单价=单价*1.089.若 SQL 语句中的 ORDER BY 短语中指定了多个字段,则(分数:2.00)A.无法排序B.只按第一个字段排序C.按自左至右的字段顺序排序D.按自右至左的字段顺序排序10.在 Visual FoxPro 中,下列关于
5、查询的说法中,正确的是(分数:2.00)A.不能根据自由表建立查询B.查询是 Visual FoxPro 支持的一种数据库对象C.通过查询设计器,可完成任何查询D.查询只能从指定的表中提取满足条件的记录,不能从视图中提取满足条件的记录11.为当前表中所有教师的工资增加 1000 元,可以使用的命令是(分数:2.00)A.CHANGE 工资 WITH 工资+1000B.REPLACE 工资 WITH 工资+1000C.REPLACE ALL 工资 WITH 工资+1000D.CHANGE ALL 工资 WITH 工资+100012.下面对表单若干常用事件的描述中,正确的是(分数:2.00)A.释
6、放表单时,Unload 事件在 Destroy 事件之前引发B.运行表单时,Init 事件在 Load 事件之前引发C.单击表单的标题栏引发表单的 Click 事件D.上面的说法都不对13.在选项组控件设计中,选项组控件的 ButtonCount 属性用于(分数:2.00)A.指定选项组中有几个选项按钮被选中B.指定有几个数据源与选项组建立联系C.指定选项组中选项按钮的数目D.指定存取选项组中每个按钮的数组14.对象的相对引用中,要引用当前操作的对象,可以使用的关键字是(分数:2.00)A.ParentB.ThisFonnC.ThisFormSetD.This15.报表的数据源可以是(分数:2
7、.00)A.表或视图B.表或查询C.表、查询或视图D.表或其他报表基于学生表 S 和学生选课表 SC 两个数据库表,它们的结构如下: S(学号,姓名,性别,年龄),其中学号、姓名和性别为 C 型字段,年龄为 N 型字段; SC(学号,课程号,成绩),其中学号和课程号为 C 型字段,成绩为 N 型字段。(分数:10.00)(1).查询学生选修课程成绩 75 分以上的学生学号,正确的 SQL 语句是(分数:2.00)A.SELECT DISTINCT 学号 FROM SC WHERE“成绩“75B.SELECT DISTINCT 学号 FROM SC WHERE 成绩75C.SELECT DIST
8、INCT 学号 FROM SC WHERE 成绩“75“D.SELECT DISTINCT“学号“FROM SC WHERE“成绩“75(2).查询同时选修课程号为 2001 和 2005 课程的学生的学号,正确的命令是(分数:2.00)A.SELECT 学号 FROM SCORE SC WHERE 课程号=“2001“AND 学号 IN(SELECT 学号 FROM SCORE SC WHERE 课程号=“2005“)B.SELECT 学号 FROM SCORE SC WHERE 课程号=“2001“AND 学号=(SELECT 学号 FROM SCORE SC WHERE 课程号=“200
9、5“)C.SELECT 学号 FROM SCORE SC WHERE 课程号=“2001“AND 课程号=“2005“D.SELECT 学号 FROM SCORE SC WHERE 课程号=“2001“OR“2005“(3).假设所有的选课成绩都已确定。显示“2002“号课程成绩中最高的 20%记录信息,正确的 SQL 命令是(分数:2.00)A.SELECT*TOP 20 FROM SC ORDER BY 成绩 WHERE 课程号=“2002“B.SELECT$PERCENT 20 FROM SC ORDER BY 成绩 DESCWHERE 课程号=“2002“C.SELECT*TOP 20
10、 PERCENT FROM SC ORDER BY 成绩 WHERE 课程号=“2002“D.SELECT*TOP 20 PERCENT FROM SC ORDER BY 成绩 DESCWHERE 课程号=“2002“(4).查询有选课记录,但没有考试成绩的学生的学号、姓名和课程号,正确的 SQL 语句是(分数:2.00)A.SELECT 学号,课程号 FROM SC WHERE 成绩=“B.SELECT 学号,课程号 FROM SC WHERE 成绩=.F.C.SELECT 学号,课程号 FROM SC WHERE 成绩=NULLD.SELECT 学号,课程号 FROM SC WHERE 成
11、绩 IS NULL(5).查询选修课程在 5 门以上的学生的学号、姓名和平均成绩,并按平均成绩降序排序,正确的命令是(分数:2.00)A.SELECT S.学号,姓名,平均成绩 FROM S,SCWHERE S.学号=SC.学号 GROUP BY S.学号 HAVING COUNT(*)5 ORDER BY 平均成绩 DESCB.SELECT 学号,姓名,AVG(成绩)FROM S,SCWHERE S.学号=SC.学号 AND COUNT(*)5GROUP BY 学号 ORDER BY 3 DESCC.SELECT S.学号,姓名,AVG(成绩)平均成绩 FROM S,SCWHERE S.学号
12、=SC.学号 AND COUNT(*)5GROUP BY S.学号 ORDER BY 平均成绩 DESCD.SELECT S.学号,姓名,AVG(成绩)平均成绩 FROM S,SCWHERE S.学号=SC.学号 GROUP BY S.学号 HAVING COUNT(*)5 ORDER BY 3 DESC16.算法的时间复杂度是指(分数:2.00)A.算法所处理的数据量B.算法的执行时间C.算法在执行过程中所需要的基本运算次数D.算法程序中的语句或指令条数17.数据的存储结构是指(分数:2.00)A.存储在外存中的数据B.数据所占的存储空间C.数据在计算机中的顺序存储方式D.数据的逻辑结构在计
13、算机中的表示18.下列对队列的叙述正确的是(分数:2.00)A.队列按“先进后出”原则组织数据B.队列属于非线性表C.队列在队尾删除数据D.队列按“先进先出”原则组织数据19.对长度为 n 的线性表排序,在最坏情况下,比较次数是 nlog2n 的排序方法是(分数:2.00)A.快速排序B.冒泡排序C.直接插入排序D.堆排序20.下列描述中正确的是(分数:2.00)A.软件工程只是解决软件项目的管理问题B.软件工程主要解决软件产品的生产率问题C.软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D.软件工程只是解决软件开发中的技术问题21.在软件设计中,不属于过程设计工具的是(分数:2.
14、00)A.PDLB.DFD 图C.PAD 图D.N-S 图22.软件(程序)调试的目标是(分数:2.00)A.诊断和改正程序中的错误B.尽可能多地发现程序中的错误C.发现并改正程序中的所有错误D.确定程序中错误的性质23.数据库系统的核心是(分数:2.00)A.数据库B.数据库管理系统C.数据库管理员D.数据库应用系统24.在关系数据库中,用来表示实体之间联系的是(分数:2.00)A.二维表B.E-R 图C.元组D.文件25.设有如下三个关系表 (分数:2.00)A.T=RSB.T=RSC.T=RSD.T=B/S26.在关于数据库(DB)、数据库系统(DBS)、数据库管理系统(DBMS)三者之
15、间关系的叙述中,正确的是(分数:2.00)A.DBMS 包括 DB 和 DBSB.DBS 包括 DB 和 DBMSC.DB 包括 DBS 和 DBMSD.DBS 是 DB 的简写,DBS 是 DBMS 的简写27.操作对象是两个表的关系运算是(分数:2.00)A.选择B.投影C.连接D并28.菜单程序文件的扩展名是(分数:2.00)AmemBmntCmprDmnx29.在 Visual FoxPro 中,有如下内存变量赋值语句: X=2010-08-08 10:15:20 AM Y=.Y. Z=“123.24“ 执行上述赋值语句之后,内存变量 X、Y 和 Z 的数据类型分别是(分数:2.00)
16、A.D、L、CB.T、L、CC.D、C、ND.T、C、N30.设 X=“123“,Y=“1234“,则下列表达式中值为.T.的是(分数:2.00)A.X$YB.AT(X,Y)=0C.X=YD.X=Y31.假设当前系统日期是 2010 年 12 月 31 日,则执行命令 QR=MOD(YEAR(DATE()+1),10)g,QR 的值是(分数:2.00)A.1B.0C.11D.系统报错32.执行如下程序,最后 S 的显示值为 SET TALK OFF s=0 i=5 x=11 DO WHILE s=x s=s+i i=i+1 ENDDO ?s SET TALK ON(分数:2.00)A.5B.1
17、1C.18D.2633.在 Visual FoxPro 中,对字段设置有效性规则,下面描述正确的是(分数:2.00)A.自由表可以设置字段有效性规则B.数据库表可以设置字段有效性规则C.对视图可以设置字段有效性规则D.可以对自由表和数据库表设置字段有效性规则34.有关 PACK 命令的描述,正确的是(分数:2.00)A.PACK 命令能物理删除当前表的当前记录B.PACK 命令能删除当前表的带有删除标记的记录C.PACK 命令能删除当前表的全部记录D.PACK 命令能删除表的结构和全部记录35.在 Visual FoxPro 的数据库表中只能有一个(分数:2.00)A.候选索引B.普通索引C.
18、主索引D.唯一索引36.以下不属于 SQL 数据操作命令的是(分数:2.00)A.MODIFYB.INSERTC.UPDATED.DELETE37.如果学生表 student 是使用下面的 SQL 语句创建的: CREATE TABLE student(学号 C(6)PRIMARY KEY NOT NULL,姓名 C(8),性别 C(2),年龄 N(2)CHECK(年龄15 AND 年龄下面的 SQL 语句中可以正确执行的是(分数:2.00)A.INSERT INTO student(学号,性别,年龄)VALUES(“0542“,“李雷“男“,17)B.INSERT INTO student(
19、学号,性别,年龄)VALUES(“李雷“,“男“,20)C.INSERT INTO student(学号,性别,年龄)VALUES(“女“,25)D.INSERT INTO student(学号,性别,年龄)VALUES(“0897“,“安宁“,“女“,30)38.SQL 语言的更新命令的关键词是(分数:2.00)A.INSERTB.UPDATEC.DELETED.SELECT39.根据“歌手”表建立视图 myview,视图中含有“歌手号”左边第一位是“1”的所有记录,正确的 SQL语句是(分数:2.00)A.CREATE VIEW myview AS SELECT*FROM 歌手 WHERE
20、 LEFF(歌手号,1)=“1“B.CREATE VIEW myview AS SELECT*FROM 歌手 WHERE LIKE(“1“,歌手号)C.CREATE VIEW myview SELECT*FROM 歌手 WHERE LEFT(歌手号,1)=“1“D.CREATE VIEW myview SELECT*FROM 歌手 WHERIE LIKE(“1“,歌手号)40.下列关于视图的描述,正确的是(分数:2.00)A.可以使用 MODIFY STRUCTURE 命令修改视图的结构B.视图不能删除,否则影响原来的数据文件C.视图是对表的复制产生的D.使用 SQL 对视图进行查询时,必须事
21、先打开该视图所在的数据库41.在 Visual FoxPro 中,当创建一个对象的时候,将先引发(分数:2.00)A.Init 事件B.Destroy 事件C.Load 事件D.Unload 事件42.表单里有一个选项按钮组,包含两个选项按钮 Option1 和 Option2。假设 Option2 没有设置 Click 事件代码,而 Option1 以及选项按钮组和表单都设置了 Click 事件代码。那么当表单运行时,如果用户单击Option2,系统将(分数:2.00)A.执行表单的 Click 事件代码B.执行选项按钮组的 Click 事件代码C.执行 Option1 的 Click 事件
22、代码D.不会有反应43.有关控件对象的 Click 事件的正确叙述是(分数:2.00)A.用鼠标双击对象时引发B.用鼠标单击对象时引发C.用鼠标右键单击对象时引发D.用鼠标右键双击对象时引发44.下面关于表单数据环境和数据环境中的两个表之间关联的陈述中,正确的是(分数:2.00)A.数据环境是对象,关系不是对象B.数据环境不是对象,关系是对象C.数据环境是对象,关系是数据环境中的对象D.数据环境和关系都不是对象45.执行 USE SC IN 0 命令的结果是(分数:2.00)A.选择 0 号工作区打开 SC 表B.选择空闲的最小号工作区打开 SC 表C.选择第 1 号工作区打开 SC 表D.显
23、示出错信息二级 VISUAL+FOXPRO-124 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:46,分数:100.00)1.在下面的 Visual FoxPro 表达式中,运算结果不为逻辑真的是(分数:2.00)A.EMPTY(SPACE(0)B.LIKE(“xy*“,“xyz“)C.AT(“xy“,“abcxyz“) D.ISNULL(.NULL.)解析:解析 AT()函数是求子串位置函数,函数值为数值型。AT(字符表达式 1,字符表达式2,数值表达式)中,如果字符表达式 1是字符表达式 2的子串,则返回字符表达式 1值的首字符在字符表达式 2值中的位置;若不是
24、子串,则返回 0。2.如果内存变量和字段变量均有变量名“姓名”,那么引用内存变量的正确方法是(分数:2.00)A.姓名 B.M姓名C.姓名D.“姓名“解析:解析 内存变量常用于存储程序运行的中间结果或用于存储控制程序执行的各种参数。可直接通过变量名引用变量的值。但如果当前打开的表中有与变量同名的字段名,此时应使用“M.变量名“或“M-变量名“引用该变量,而字段名可以直接引用。3.在 Visual FoxPro 中以下叙述正确的是(分数:2.00)A.表也称作表单B.一个数据库中的所有表文件存储在一个物理文件中C.数据库文件的扩展名是.dbfD.数据库文件不存储用户数据 解析:解析 数据库文件的
25、作用是把相互关联的属于同一数据库的数据库表组织在一起,并不存储用户数据,数据库中的每个表文件都分别存储在不同的物理文件中。4.在当前表中,查找第 2 个男同学的记录,应使用命令(分数:2.00)A.LOCATE FOR 性别=“男“NEXT 2B.LOCATE FOR 性别!=“男“NEXT 2C.LOCATE FOR 性别!=“男“SKIP 2D.LOCATE FOR 性别=“男“CONTINUE 解析:解析 LOCATE FOR 是指查找到第一条满足要求的记录,然后使用 CONTINUE 继续查找下一条满足要求的记录。5.在 Visual FoxPro 中,对于字段值为空值(NULL)叙述
26、正确的是(分数:2.00)A.空值等于空字符串B.Visual FoxPro 不支持空值C.空值表示字段还没有确定值 D.空值等同于数值 0解析:解析 在 Visual FoxPro 中字段值为空值(NULL)表示字段还没有确定值,例如一个商品的价格的值为空值,表示这件商品的价格还没有确定,但不等同于数值为 0。6.以下有关 SELECT 短语的叙述中错误的是(分数:2.00)A.SELECT 短语中可以使用别名B.SELECT 短语中只能包含表中的列及其构成的表达式 C.SELECT 短语规定了结果集中的列顺序D.如果 FROM 短语引用的两个表有同名的列,则 SELECT 短语引用它们时必
27、须使用表名前缀加以限定解析:解析 SELECT 短语中除了包含表中的列及其构成的表达式外,还可以包括常量等其他元素,在SELECT 短语中可以使用别名,并规定了结果集中的列顺序,如果 FROM 短语中引用的两个表有同名的列,则 SELECT 短语引用它们时必须使用表名前缀加以限定。7.把表中“学历”字段的有效性规则取消,正确的 SQL 语句是(分数:2.00)A.ALTER TABLE 学生 ALTER 学历 DROP CHECK B.ALTER TABLE 学生 DELETE 学历 DROP CHECKC.ALTER TABLE 学生 DELETE CHECK 学历D.ALTER TABLE
28、 学生 DROP CHECK 学历解析:解析 修改表结构将字段的有效性规则删除的语句为:ALTER TABLE 表名ALTERCOLUMN,所以此题答案为 A。8.要使“产品”表中所有产品的单价上浮 8%,正确的 SQL 命令是(分数:2.00)A.UPDATE 产品 SET 单价=单价+单价*8%FOR ALLB.UPDATE 产品 SET 单价=单价*1.08 FOR ALLC.UPDATE 产品 SET 单价=单价+单价*8%D.UPDATE 产品 SET 单价=单价*1.08 解析:解析 SQL 的数据更新命令格式如下: UPDATE 表名 SET 字段名 1=表达式 1,字段名 2=
29、表达式 2WHERE 条件 因此,正确答案为 UPDATE 产品 SET 单价=单价*1.08。9.若 SQL 语句中的 ORDER BY 短语中指定了多个字段,则(分数:2.00)A.无法排序B.只按第一个字段排序C.按自左至右的字段顺序排序 D.按自右至左的字段顺序排序解析:解析 在 SQL 语句中,ORDER BY 指定了多个字段,表示按照从左至右的顺序,当前一个字段出现相同值的时候,按下一个字段进行排序,如“ORDER BY 专业,成绩 DESC“表示先按专业升序排序,当专业相同的时候,再按成绩降序排序。10.在 Visual FoxPro 中,下列关于查询的说法中,正确的是(分数:2
30、.00)A.不能根据自由表建立查询B.查询是 Visual FoxPro 支持的一种数据库对象 C.通过查询设计器,可完成任何查询D.查询只能从指定的表中提取满足条件的记录,不能从视图中提取满足条件的记录解析:解析 查询可以从指定的表或视图中提取满足条件的记录,但它并不只限于单个表或视图。查询设计器的局限性是指它只能建立一些规则的查询,如果要建立比较复杂的查询,则只能通过 SQL SELECT语句来实现。11.为当前表中所有教师的工资增加 1000 元,可以使用的命令是(分数:2.00)A.CHANGE 工资 WITH 工资+1000B.REPLACE 工资 WITH 工资+1000C.REP
31、LACE ALL 工资 WITH 工资+1000 D.CHANGE ALL 工资 WITH 工资+1000解析:解析 用 REPLACE 命令修改表结构,其常用格式为:REPLACE字段名 1WITH表达式 1字段 2WITH表达式 2FOR条件表达式。但此格式只能修改当前的一条记录,此题要求为所有教师的工资增加 1000 元,所以还要使用 ALL 短语。12.下面对表单若干常用事件的描述中,正确的是(分数:2.00)A.释放表单时,Unload 事件在 Destroy 事件之前引发B.运行表单时,Init 事件在 Load 事件之前引发C.单击表单的标题栏引发表单的 Click 事件D.上面
32、的说法都不对 解析:解析 在表单的常用事件中,Init 事件在表单建立时引发,Load 事件在表单建立之前引发,Unload 事件在表单释放时引发,单击表单引发表单的 Click 事件。13.在选项组控件设计中,选项组控件的 ButtonCount 属性用于(分数:2.00)A.指定选项组中有几个选项按钮被选中B.指定有几个数据源与选项组建立联系C.指定选项组中选项按钮的数目 D.指定存取选项组中每个按钮的数组解析:解析 选项组控件的 ButtonCount 属性用于指定选项组中选项按钮的数目。14.对象的相对引用中,要引用当前操作的对象,可以使用的关键字是(分数:2.00)A.ParentB
33、.ThisFonnC.ThisFormSetD.This 解析:解析 This 表示当前操作对象。在对象的相对引用中,关键字 Parent 表示当前对象的直接容器对象,ThisForm 表示当前对象所在的表单,ThisFormSet 表示当前对象所在的表单集。15.报表的数据源可以是(分数:2.00)A.表或视图B.表或查询C.表、查询或视图 D.表或其他报表解析:解析 数据源是报表的数据来源,通常是数据库中的表或自由表,也可以是视图、查询或临时表。基于学生表 S 和学生选课表 SC 两个数据库表,它们的结构如下: S(学号,姓名,性别,年龄),其中学号、姓名和性别为 C 型字段,年龄为 N
34、型字段; SC(学号,课程号,成绩),其中学号和课程号为 C 型字段,成绩为 N 型字段。(分数:10.00)(1).查询学生选修课程成绩 75 分以上的学生学号,正确的 SQL 语句是(分数:2.00)A.SELECT DISTINCT 学号 FROM SC WHERE“成绩“75B.SELECT DISTINCT 学号 FROM SC WHERE 成绩75 C.SELECT DISTINCT 学号 FROM SC WHERE 成绩“75“D.SELECT DISTINCT“学号“FROM SC WHERE“成绩“75解析:解析 在 WHERE 条件中成绩不需要用引号括起来,因此 A 和 D
35、 排除,成绩是数值型字段,因此 75也不需要加双引号,故选项 C 也错误。(2).查询同时选修课程号为 2001 和 2005 课程的学生的学号,正确的命令是(分数:2.00)A.SELECT 学号 FROM SCORE SC WHERE 课程号=“2001“AND 学号 IN(SELECT 学号 FROM SCORE SC WHERE 课程号=“2005“) B.SELECT 学号 FROM SCORE SC WHERE 课程号=“2001“AND 学号=(SELECT 学号 FROM SCORE SC WHERE 课程号=“2005“)C.SELECT 学号 FROM SCORE SC W
36、HERE 课程号=“2001“AND 课程号=“2005“D.SELECT 学号 FROM SCORE SC WHERE 课程号=“2001“OR“2005“解析:解析 嵌套查询所要求的结果出自一个关系,但相关的条件却涉及多个关系。其内层基本上也是一个 SELECT-FROM-WHERE 查询语句。简单嵌套查询可使用谓词 IN 或 NOT IN 来判断在外层的查询条件中是否包含内层查询的结果。本题要查询同时选修课程号为 C1 和 C5 课程的学生的学号,外层查询包含了内层查询的结果。故本题答案为 A。(3).假设所有的选课成绩都已确定。显示“2002“号课程成绩中最高的 20%记录信息,正确的
37、 SQL 命令是(分数:2.00)A.SELECT*TOP 20 FROM SC ORDER BY 成绩 WHERE 课程号=“2002“B.SELECT$PERCENT 20 FROM SC ORDER BY 成绩 DESCWHERE 课程号=“2002“C.SELECT*TOP 20 PERCENT FROM SC ORDER BY 成绩 WHERE 课程号=“2002“D.SELECT*TOP 20 PERCENT FROM SC ORDER BY 成绩 DESCWHERE 课程号=“2002“ 解析:解析 特殊选项 TOP 的格式为“TOP数字表达式PERCENT“,当不用 PERCE
38、NT 时,数字表达式是 1 至 32767 间的整数,说明显示前几个记录,当用 PERCENT 时,数字表达式是 0.01 至 99.99 间的实数,说明显示结果中前百分之几的记录。TOP 短语要与 ORDER BY 短语同时使用才有效。(4).查询有选课记录,但没有考试成绩的学生的学号、姓名和课程号,正确的 SQL 语句是(分数:2.00)A.SELECT 学号,课程号 FROM SC WHERE 成绩=“B.SELECT 学号,课程号 FROM SC WHERE 成绩=.F.C.SELECT 学号,课程号 FROM SC WHERE 成绩=NULLD.SELECT 学号,课程号 FROM
39、SC WHERE 成绩 IS NULL 解析:解析 “没有考试成绩”表示成绩字段值为空,而表示空值时应该用“IS NULL”不能用“=”,故选项 D 正确。(5).查询选修课程在 5 门以上的学生的学号、姓名和平均成绩,并按平均成绩降序排序,正确的命令是(分数:2.00)A.SELECT S.学号,姓名,平均成绩 FROM S,SCWHERE S.学号=SC.学号 GROUP BY S.学号 HAVING COUNT(*)5 ORDER BY 平均成绩 DESCB.SELECT 学号,姓名,AVG(成绩)FROM S,SCWHERE S.学号=SC.学号 AND COUNT(*)5GROUP
40、BY 学号 ORDER BY 3 DESCC.SELECT S.学号,姓名,AVG(成绩)平均成绩 FROM S,SCWHERE S.学号=SC.学号 AND COUNT(*)5GROUP BY S.学号 ORDER BY 平均成绩 DESCD.SELECT S.学号,姓名,AVG(成绩)平均成绩 FROM S,SCWHERE S.学号=SC.学号 GROUP BY S.学号 HAVING COUNT(*)5 ORDER BY 3 DESC 解析:解析 题目要求查询平均成绩,表中不存在”平均成绩”字段,需要使用 AVG 函数,故 A 不正确;学生表 student 和成绩表 score 都含有
41、“学号”字段,在查询时需指明学号属于哪个表,故 B 不正确;GROUP BY 短语用于对查询结果进行分组,后跟随 HAVING 短语来限定分组必须满足此题查询选修课在 5 门以上的学牛,必须在分组后再统计,所以 CONM(大)S 应在 HAVING 后,故本题答案为 D。16.算法的时间复杂度是指(分数:2.00)A.算法所处理的数据量B.算法的执行时间C.算法在执行过程中所需要的基本运算次数 D.算法程序中的语句或指令条数解析:解析 一个算法的时间复杂度是指执行这个算法所需的极端工作量。17.数据的存储结构是指(分数:2.00)A.存储在外存中的数据B.数据所占的存储空间C.数据在计算机中的
42、顺序存储方式D.数据的逻辑结构在计算机中的表示 解析:解析 数据的存储结构也称为数据的物理结构,是数据的逻辑结构在计算机存储空间中的存放形式。18.下列对队列的叙述正确的是(分数:2.00)A.队列按“先进后出”原则组织数据B.队列属于非线性表C.队列在队尾删除数据D.队列按“先进先出”原则组织数据 解析:解析 队列是一种操作受限的线性表。它只允许在线性表的一端进行插入操作,另一端进行删除操作。其中,允许插入的一端称为队尾(reat),允许删除的一端称为队首(front)。队列具有先进先出的特点,它是按“先进先出”的原则组织数据的。19.对长度为 n 的线性表排序,在最坏情况下,比较次数是 n
43、log2n 的排序方法是(分数:2.00)A.快速排序B.冒泡排序C.直接插入排序D.堆排序 解析:解析 在最坏情况下,快速排序、冒泡排序和直接插入排序需要的比较次数都是 n(n-1)/2,堆排序需要比较的次数为 nlog 2 n。20.下列描述中正确的是(分数:2.00)A.软件工程只是解决软件项目的管理问题B.软件工程主要解决软件产品的生产率问题C.软件工程的主要思想是强调在软件开发过程中需要应用工程化原则 D.软件工程只是解决软件开发中的技术问题解析:解析 软件工程的目标是在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互
44、操作性且满足用户需求的产品。21.在软件设计中,不属于过程设计工具的是(分数:2.00)A.PDLB.DFD 图 C.PAD 图D.N-S 图解析:解析 常见的过程设计工具有图形工具(程序流程图、N-S 图、PAD 图、HIPO 图)、表格工具(判定表)和语言工具(PDL)。DFD 是数据流图,是描述数据处理过程的工具。22.软件(程序)调试的目标是(分数:2.00)A.诊断和改正程序中的错误 B.尽可能多地发现程序中的错误C.发现并改正程序中的所有错误D.确定程序中错误的性质解析:解析 软件测试与软件调试是两个不同的概念:软件测试的目的是发现错误,而软件调试的目的是发现错误或导致程序失效的原
45、因,并修改程序以修正错误,调试是测试之后的活动。23.数据库系统的核心是(分数:2.00)A.数据库B.数据库管理系统 C.数据库管理员D.数据库应用系统解析:解析 数据库管理系统是一种软件系统,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等,是数据库系统的核心。24.在关系数据库中,用来表示实体之间联系的是(分数:2.00)A.二维表 B.E-R 图C.元组D.文件解析:解析 关系数据库系统采用关系模型作为数据的组织形式。在关系模型中用二维表来表示实体及实体间的联系。25.设有如下三个关系表 (分数:2.00)A.T=RSB.T=RSC.T=RS D.T=B/S解析:解析
46、 对于两个关系的合并操作可以用笛卡尔积表示。设有 n 元关系 R 和 m 元关系 S,它们分别有 p 和 q 个元组,则 R 与 S 的笛卡尔积记为 RS,它是一个 m+n 元关系,元组个数是 pq。由题意可得,关系 T 是由关系 R 与关系 S 进行笛卡尔积运算得到的。26.在关于数据库(DB)、数据库系统(DBS)、数据库管理系统(DBMS)三者之间关系的叙述中,正确的是(分数:2.00)A.DBMS 包括 DB 和 DBSB.DBS 包括 DB 和 DBMS C.DB 包括 DBS 和 DBMSD.DBS 是 DB 的简写,DBS 是 DBMS 的简写解析:解析 数据库(DB)、数据库系
47、统(DBS)和数据库管理系统三者之间的关系是:数据库系统包括数据库和数据库管理系统。其中,数据库管理系统可以对数据库的建立、使用和维护进行管理,是数据库系统的核心。27.操作对象是两个表的关系运算是(分数:2.00)A.选择B.投影C.连接 D并解析:解析 选择和投影运算的操作对象只是一个表,相当于对一个二维表进行切割。连接运算需要两个表作为操作对象。并是传统的关系运算,是由属于两个关系的元素组成的集合。28.菜单程序文件的扩展名是(分数:2.00)AmemBmntCmpr Dmnx解析:解析 内存变量保存文件扩展名是.mem,菜单备注文件扩展名是.mnt,菜单定义文件的扩展名是.mnx,菜单
48、程序文件的扩展名是.mpr。29.在 Visual FoxPro 中,有如下内存变量赋值语句: X=2010-08-08 10:15:20 AM Y=.Y. Z=“123.24“ 执行上述赋值语句之后,内存变量 X、Y 和 Z 的数据类型分别是(分数:2.00)A.D、L、CB.T、L、C C.D、C、ND.T、C、N解析:解析 本题中 X 的变量值为日期时间型(T),以花括号为定界符;Y 的变量值为逻辑型(L),以两个句点为定界符;Z 的变量值为字符型(C),以半角状态下的双引号、单引号或中括号为定界符。30.设 X=“123“,Y=“1234“,则下列表达式中值为.T.的是(分数:2.00
49、)A.X$Y B.AT(X,Y)=0C.X=YD.X=Y解析:解析 关系表达式“字符型表达式 1$字符型表达式 2”为子串包含测试,如果左字符串是右字符串的一个子串,则结果为逻辑真(.T.),否则为逻辑假(.F.)。在用双等号运算符(=)比较两个字符串时,只有当两个字符串完全相同时,运算结果才会是逻辑真,否则为逻辑假。在用单等号运算符(=)比较两个字符串时,运算结果与 SET EXACTON|OFF 的设置有关。AT()函数的函数值是数值型。31.假设当前系统日期是 2010 年 12 月 31 日,则执行命令 QR=MOD(YEAR(DATE()+1),10)g,QR 的值是(分数:2.00)A.1 B.0C.11D.系统报错解析:解析 DATE()函数返回当前系统日期,日期表达式中,一个日期可以加上一个整数 N,表示日期相应地向后移动 N 天,题干中当前日期是 2010 年 12 月 31