最新Visual FoxPro练习题.docx
《最新Visual FoxPro练习题.docx》由会员分享,可在线阅读,更多相关《最新Visual FoxPro练习题.docx(166页珍藏版)》请在冰豆网上搜索。
最新VisualFoxPro练习题
D.SELECT*FROM学生WHERE出生日期<={^1982-03-20}OR性别=”男”VisualFoxPro练习题
【答案】D
C.DB包括DBS和DBMSD.DB、DBS和DBMS是平等关系
单选题
1.下面叙述正确的是______。
A、算法的执行效率与数据的存储结构无关
B、算法的空间复杂度是指算法程序中指令(或语句)的条数
C、算法的有穷性是指算法必须能在执行有限个步骤之后终止
D、以上三种描述都不对
答案:
C
评析:
【参考答案】
本题答案为 C 选项。
【试题解析】
所谓数据的存储结构,是指数据的逻辑结构在计算机存储空间中的存放形式,采用不同的数据结构,数据处理的效率是不同的,因此上说A选项叙述错误。
算法的空间复杂度是指算法执行过程中所需要的存储空间,因此B选项叙述错误。
算法有穷性是算法的基本特性之一,指算法必须能在有限的时间内做完,即算法必须能在执行有限个步骤之后终止。
因此C选项描述正确。
2.以下数据结构中不属于线性结构的是______。
A、队列
B、线性表
C、二叉树
D、栈
答案:
C
评析:
【参考答案】
本题答案为 C 选项。
【试题解析】
线性结构必须满足如下两个条件:
(1)有且只有一个根结点;
(2)每一个结点最多有一个前件,也最多有一个后件
而对于二叉树来说,每一个节点最多可以有两颗子树,因此二叉树不是线性结构。
3.在一颗二叉树上第5层的结点数最多是______。
A、8
B、16
C、32
D、15
答案:
B
评析:
【参考答案】
本题答案为 B 选项。
【试题解析】
对于一个二叉树来说,每一个结点最多2棵子树,根据二叉树的基本性质:
在二叉树的第K层,最多有2的(k-1)次方个结点,因此第5层上最多有 2×2×2×2=16 个结点。
4.下面描述中,符合结构化程序设计风格的是______。
A、使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑
B、模块只有一个入口,可以有多个出口
C、注重提高程序的执行效率
D、不使用goto语句
答案:
A
评析:
【参考答案】
本题答案为 A 选项。
【试题解析】
结构化程序设计方法是程序设计的先进方法和工具。
采用结构化程序设计方法编写程序,可使程序结构良好、易读、易理解、易维护。
1966年,Boehm和Jacopini证明了程序设计语言仅仅使用顺序、选择和重复三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。
5.下面概念中,不属于面向对象方法的是______。
A、对象
B、继承
C、类
D、过程调用
答案:
D
评析:
【参考答案】
本题答案为 D 选项。
【试题解析】
对象、以及对象属性与方法、类、继承、多态性几个要素是面向对象方法的几个基本要素;对于本题D选项不是面向对象的方法。
6.在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是______。
A、可行性分析
B、需求分析
C、详细设计
D、程序编码
答案:
B
评析:
【参考答案】
本题答案为 B 选项。
【试题解析】
数据流程图是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它是结构化分析的常用工具,在需求分析时使用。
7.在软件开发中,下面任务不属于设计阶段的是______。
A、数据结构设计
B、给出系统模块结构
C、定义模块算法
D、定义需求并建立系统模型
答案:
D
评析:
【参考答案】
本题答案为 D 选项。
【试题解析】
软件设计是把软件需求转换为软件表示的过程,是在需求分析只有的阶段,因此D选项所描述的任务不是设计阶段的任务。
8.数据库系统的核心是______。
A、数据模型
B、数据库管理系统
C、软件工具
D、数据库
答案:
B
评析:
【参考答案】
本题答案为 B 选项。
【试题解析】
数据库系统由如下5部分组成:
数据库
数据库管理系统
数据库管理员
硬件
软件
本题为曾经考试过的试题,一般地说,数据库系统的核心为数据库管理系统(答案也为B选项),但是在最新的相关二级公共基础知识教程中说核心为数据库,特此说明。
9.下列叙述中正确的是______。
A、数据库系统是一个独立的系统,不需要操作系统的支持
B、数据库设计是指设计数据库管理系统
C、数据库技术的根本目标是要解决数据共享的问题
D、数据库系统中,数据的物理结构必须与逻辑结构一致
答案:
C
评析:
【参考答案】
本题答案为 C 选项。
【试题解析】
20世纪60年代后期以来,计算机用于管理的规模逐渐庞大,应用也越来越广泛,需要计算机管理的数据量激烈增加,同时多种应用、多种语言相互覆盖地共享数据集合地要求越来越强烈,为了解决这些问题而使用了数据库技术,因此上说本题C选项叙述是正确的。
10.下列模式中,能够给出数据库物理存储结构与物理存取方法的是______。
A、内模式
B、外模式
C、概念模式
D、逻辑模式
答案:
A
评析:
【参考答案】
本题答案为 A 选项。
【试题解析】
对于数据库来说,概念模式和逻辑模式只是一种定义,而外模式是数据库用户的数据视图,内模式是数据物理结构和存储方式的描述。
因此本题正确选项为A选项。
11.对于"关系"的描述,正确的是______。
A、同一个关系中允许有完全相同的元组
B、在一个关系中元组必须按关键字升序存放
C、在一个关系中必须将关键字作为该关系的第一个属性
D、同一个关系中不能出现相同的属性名
答案:
D
评析:
【参考答案】
本题答案为 D 选项。
【试题解析】
关系必须具有以下特点:
1. 关系必须规范。
2. 同一个关系中不能出现相同的属性名。
3. 关系中不允许有完全相同的元组。
4. 关系中元组的排列次序无关紧要。
由此可知,本题正确答案为D选项。
12.在表设计器的"字段"选项卡中可以创建的索引是______。
A、唯一索引
B、候选索引
C、主索引
D、普通索引
答案:
D
评析:
【参考答案】
本题答案为 D 选项。
【试题解析】
对于本题一定要注意是在表设计器的"字段"选项卡中可创建的索引,在该选项卡中只能创建或者取消索引,该索引类型为普通索引,要改变索引的类型,可以在"索引"选项卡中进行。
13.在程序中不需要用public等命令明确声明和建立,可直接使用的内存变量是______。
A、局部变量
B、公共变量
C、私有变量
D、全局变量
答案:
C
评析:
【参考答案】
本题答案为 C 选项。
【试题解析】
在程序中,PRIVATE关键字定义私用的内存变量,声明的变量仅在它的模块及其下层模块中有效,又称为局部内存变量,它仅适用于定义该变量的过程,而不会影响到上一级程序的执行。
私有变量不用声明可直接使用。
14.下列程序段的输出结果是______。
CLEAR
STORE 10 TO A
STORE 20 TO B
SET UDFPARMS TO REFERENCE
DO SWAP WITH A,(B)
?
A,B
PROCEDURE SWAP
PARAMETERS X1,X2
TEMP=X1
X1=X2
X2=TEMP
ENDPROC
A、10 20
B、20 20
C、20 10
D、10 10
答案:
B
评析:
【参考答案】
本题答案为 B 选项。
【试题解析】
在本题程序中,命令SET UDFPARMS TO REFERENCE设置参数传递按照引用传递,形参变量值改变时,实参变量值也随之改变,而SWAP的调用方式为:
DO SWAP WITH A,(B)
则表明A按照引用传递,B按值传递,在这种情况下B的值是不变的,A返回的为B的值,则输出结果为20 20。
15.使用调试器调试下列程序,如果想在过程SWAP执行时观察X1的值,可以在其中安置一条命令,程序执行到该命令时,系统将计算X1的值,并将结果在调试输出窗口中显示,这条命令的正确写法是______。
CLEAR
STORE 10 TO A
STORE 20 TO B
SET UDFPARMS TO REFERENCE
DO SWAP WITH A,(B)
?
A,B
PROCEDURE SWAP
PARAMETERS X1,X2
TEMP=X1
X1=X2
X2=TEMP
ENDPROC
A、DEBUGOUT X1
B、DEBUG X1
C、OUT X1
D、TEST X1
答案:
A
评析:
【参考答案】
本题答案为 A 选项。
【试题解析】
在VF中,当模块程序调试执行到命令 DEBUGOUT<表达式>时,会计算出表达式的值,并将计算结果送入调试输出窗口。
16.答案:
A
评析:
【参考答案】
本题答案为 A 选项。
【试题解析】
对于表单来说,其CAPTION属性表示为表单的标题,由此可知本题的C、D选项都不是正确答案,根据表单的属性设置要求只有选项A语句正确。
17.答案:
D
评析:
【参考答案】
本题答案为 D 选项。
【试题解析】
对当前表单的某控件进行设置,则使用THISFORM,由此可知本题A、B选项都不正确,
文本框的PasswordChar属性指定文本框控件内显示用户输入的字符还是显示占位符;指定用作占位符的字符,而文本框根本就没有PASSWORD的属性,由此可知本题正确答案为D选项。
18.则在横线处应填写的代码是
A、flag=-1
B、flag=0
C、flag=1
D、flag=2
答案:
B
评析:
【参考答案】
本题答案为 B 选项。
【试题解析】
下面根据试题源程序进行分析:
USE 口令表 &&打开口令表
GO TOP &&到第一条记录
Flag=0 &&flag赋值为0
DO WHILE .not.EOF( ) &&通过循环逐条记录进行处理
IF Alltrim(用户名)==Alltrim(Thisform.Text1.Value)
IF Alltrim(口令)==Alltrim(Thisform.Text2.Value)
WAIT"欢迎使用"WINDOWS TIMEOUT2 &&如果用户名和口令都正确的话,输出"欢迎使用"
ELSE
WAIT"口令错误"WINDOW TIMEOUT 2 &&如果用户名正确而口令错误,输出"口令错误"
ENDIF
Flag=1 &&如果用户名正确,则将FLAG的值赋值为1
EXIT
ENDIF
SKIP
ENDDO
IF________
WAIT"用户名错误"WINDOWS TIMEOUT2 &&输出"用户名错误"
ENDIF
根据上面对源程序的分析,同时根据题目要求可知,只有当用户名输入错误时,才会输出"用户名错误",由此可知
IF________
WAIT"用户名错误"WINDOWS TIMEOUT2 &&输出"用户名错误"
ENDIF
语句段的IF后的条件是"当TEXT1中的用户名不正确"时,因为在DO WHILE语句中已经说明当用户名正确时,FLAG的值为1,则不正确时,FLAGE的值不变,依然为0,因此该判断语句可以为FLAG=0。
所以本题答案为B选项。
19.设X=10,语句?
VARTYPE("X")的输出结果是______。
A、N
B、C
C、10
D、X
答案:
B
评析:
【参考答案】
本题答案为 B 选项。
【试题解析】
函数VARTYPE(<表达式>[,<逻辑表达式>]),测试<表达式>的类型,返回一个大写字母,函数值为字符型。
对于本题来说,因为"X"为字符,所以语句?
VARTYPE("X"),返回值为C;
如果是语句?
VARTYPE(X)的话,将返回N。
20.表达式LEN(SPACE(0))的运算结果是______。
A、.NULL.
B、1
C、0
D、""
答案:
C
评析:
【参考答案】
本题答案为 C 选项。
【试题解析】
函数SPACE(表达式),返回表达式指定长度的字符串;
函数LEN(字符表达式),返回字符表达式的长度;
因为SPACE(0),返回长度为0的字符串,所以LEN(SPACE(0))的返回值为0。
对于本题一定要注意空值和空字符串的区别。
21.为表单建立了快捷菜单mymenu,调用快捷菜单的命令代码DO mymenu.mpr WITH THIS应该放在表单的哪个代码中?
A、Destroy事件
B、Init事件
C、Load事件
D、RightClick事件
答案:
D
评析:
【参考答案】
本题答案为 D 选项。
【试题解析】
对于本题,首先对事件进行分析:
DESTROY事件:
当对象从内存中释放时引发;
INIT事件:
当对象生成时引发;
LOAD事件:
在表单对象建立之前引发。
RightClick事件:
用鼠标右键单击时引发。
因为本题已经说明建立快捷菜单,因为习惯上说,快捷菜单是当鼠标右键单击时显示,也就是在鼠标右键单击时引发该事件,所以本题答案为D选项。
22.答案:
C
评析:
【参考答案】
本题答案为 C 选项。
【试题解析】
在VF中,利用命令ALTER TABLE命令来修改表的结构,增加字段命令其格式为:
ALTER TABLE 表名
ADD 字段名,字段类型 CHECK 表达式1
ERROR 表达式2
所以本题正确答案为C选项。
23.答案:
D
评析:
【参考答案】
本题答案为 D 选项。
【试题解析】
在VF中,可以使用VF本身的命令REPLACE来完成修改记录的操作,也可以通过SQL语句的UPDATE来完成,因为本题要求使用SQL语句,而选项A语句虽然能够修改记录,但是其不是SQL语句,因此选项A命令不符合题目要求。
UPDATE命令格式为:
格式:
UPDATE TableName
SET Column_Name1 = eExpression1[,Column_Name2 = eExpression2]
WHERE Condition
UPDATE是用来修改表中已经存在的数据,一般使用WHERE子句指定条件,以更新满足条件的一些记录的字段值,并且一次可以更新多个字段;如果不使用WHERE子句,则更新全部记录。
有UPDATE命令的格式,不难得到本题正确答案为D选项的结论。
24.答案:
C
评析:
【参考答案】
本题答案为 C 选项。
【试题解析】
对于本题可以从源程序进行分析:
CLOSE DATA &&关闭数据库
a=0 &&赋值a为0
USE 教师 &&打开教师数据表
GO TOP &&到记录开头
DO WHILE .NOT.EOF() &&逐条记录进行判断
IF 主讲课程="数据结构".OR.主讲课程="C语言"
a=a+1 &&如果满足 主讲课程="数据结构"或者 主讲课程="C语言"a累加1
ENDIF
SKIP
ENDDO
?
a &&输出a的值。
因为在表教师中,满足主讲课程为"数据结构"的有4条记录、为"C语言"有2条记录,所以a最后的值为6。
因此本题C选项正确。
25.答案:
A
评析:
【参考答案】
本题答案为 A 选项。
【试题解析】
SQL语句 SELECT *FROM 教师 WHERE NOT(工资>3000 OR 工资<2000) 的作用是查询教师表中工资不大于3000或者不小于2000的记录,也就是说工资在 2000和3000之间的记录(包括了2000和3000),而在SQL语句中使用"工资 between 2000 AND 3000"来表示,因此A选项语句同题目语句等价。
选项B中语句功能是:
查询教师表中工资大于2000并小于3000的记录(不包括2000和3000)。
选项C中语句功能是:
查询教师表中工资大于2000或者工资小于3000的记录,实际上就是所有记录。
选项D中语句功能是:
查询教师表中工资小于等于2000并且大于等于3000的记录,这样的记录肯定是不存在的。
26.答案:
B
评析:
【参考答案】
本题答案为 B 选项。
【试题解析】
在SQL语句中,定义、修改和删除有效性规则的和默认值定义的命令为ALTER TABLE,修改有效性规则的格式:
ALTER TABLE TABLENAME ALTER [columhn] fieldname2 [NULL|NOT NULL] [SET CHECK lexpression2]
由命令格式可知本题正确答案为B选项。
27.答案:
A
评析:
【参考答案】
本题答案为 A 选项。
【试题解析】
题目中的SQL语句:
SELECT DISTINCT 系号 FROM 教师 WHERE 工资>=;
ALL(SELECT 工资 FROM 教师 WHERE 系号="02")
DISTINCT短语将去掉重复纪录;
语句的意思是查询教师表中大于等于系号为"02"最高工资员工的系号,这样的记录在只有三条:
王岩盐(02系工资最高记录)、李明玉(01系)、乔小延(01系),去掉重复记录,显示结果为"01"和"02"。
28.答案:
D
评析:
【参考答案】
本题答案为 D 选项。
【试题解析】
在SQL中定义视图使用的命令为CREATE,其格式为:
CREATE VIEW view_name[(column_name[,column_name]...)]
AS select_statement
由此命令格式可知,本题中的A、C选项不是本题答案,因为题目要求视图包括了系号和(该系的)平均工资两个字段,则SELECT语句中应该通过系号进行分组,因此本题正确答案为D选项。
29.答案:
D
评析:
【参考答案】
本题答案为 D 选项。
【试题解析】
该SQL语句根据主讲课程对教师表进行分组,因为该数据表的主讲课程有"数据结构"、"C语言"、"操作系统"、"数据库"、"网络技术"、"编译原理"6个课程,因此查询出来的记录显示为6条。
30.答案:
C
评析:
【参考答案】
本题答案为 C 选项。
【试题解析】
在题目中的SQL语句:
SELECT 学院.系名,COUNT(*) AS 教师人数 FROM 教师,学院;
WHERE 教师.系号=学院.系号 GROUP BY 学院.系名
功能是,根据学院表的系名分组,并依据关系教师.系号=学院.系号联接,来查询系名和对应的教师人数。
在本题的四个选项中,只有C选项中的语句功能和题目要求等价。
31.使用SQL语句增加字段的有效性规则,是为了能保证数据的______。
A、实体完整性
B、表完整性
C、参照完整性
D、域完整性
答案:
D
评析:
【参考答案】
本题答案为 D 选项。
【试题解析】
域约束规则也称作字段有效性规则。
在插入或者修改字段值时被激活,主要用于数据输入正确性检验。
字段有效性规则是逻辑表达式。
因此本题答案为D选项。
32.有关参照完整性的删除规则,正确的描述是______。
A、如果删除规则选择的是"限制",则当用户删除父表中的记录时,系统将自动删除子表中的所有相关记录
B、如果删除规则选择的是"级联",则当用户删除父表中的记录时,系统将禁止删除与子表相关的父表中的记录
C、如果删除规则选择的是"忽略",则当用户删除父表中的记录时,系统将不负责做任何工作
D、上面三种说法都不对
答案:
C
评析:
【参考答案】
本题答案为 C 选项。
【试题解析】
在删除规则中:
如果选择"级联",则自动删除子表中的相关所有记录;
如果选择"限制",若子表中有相关的记录,则禁止修改父表中的记录;
如果选择"忽略",则不作参照完整性检查,即删除父表的记录时与子表无关。
由此可知本题答案为C选项。
33.有关查询设计器,正确的描述是______。
A、"联接"选项卡与SQL语句的GROUP BY 短语对应
B、"筛选"选项卡与SQL语句的HAVING短语对应
C、"排序依据"选项卡与SQL语句的ORDER BY 短语对应
D、"分组依据"选项卡与SQL语句的JOIN ON短语对应
答案:
C
评析:
【参考答案】
本题答案为 C 选项。
【试题解析】
在SQL语句中:
短语GOUP BY为分组
短语ORDER BY为排序
短语HAVING必须和GROUP BY联合使用,用来限定分组必须满足的条件。
短语JOIN ON为联接
由此可知本题答案为C选项。
34.使用"调试器"调试程序时,用于显示正在调试的程序文件的窗口是______。
A、局部窗口
B、跟踪窗口
C、调用堆栈窗口
D、监视窗口
答案:
B
评析:
【参考答案】
本题答案为 B 选项。
【试题解析】
本题为基础性试题,在跟踪窗口显示正在调试的程序文件。
35.让控件获得焦点,使其成为活动对象的方法是______。
A、Show
B、Release
C、SetFocus
D、GotFocus
答案:
C
评析:
【参考答案】
本题答案为 C 选项。
【试题解析】
show方法表示是否显示控件,release方法将控件从内存中清除,setfocus方法使控件获得焦点,GOTfocus事件当对象获得焦点时引发。
由此可知本题正确答案为C选项。
36.数据的存储结构是指______。
A、数据所占的存储空间量
B、数据的逻辑结构在计算机中的表示
C、数据在计算机中的顺序存储方式
D、存储在外存中的数据
答案:
B
评析:
【参考答案】
本题答案为 B 选项。
【试题解析】
所谓数据的存储结构,是指数据的逻辑结构在计算机存储空间中的存放形式。
因此本题的正确答案为B。
37.下列关于栈的叙述中正确的是______。
A、在栈