满分:1 分
二、判断题(共 10 道试题,共 10 分。)V
1. 打开表文件时,VFP自动打开该表的结构索引文件。( )A. 错误B. 正确
2. @?say?get语句中的get子句必须用read语句激活,才能修改指定变量的值。( )A. 错误B. 正确
3. Visual FoxPro的SQL-select 语句的联接格式可以实现多个表的联接。( )A. 错误B. 正确
4. 表的数据记录也存储在数据库文件中。( )A. 错误B. 正确
5. 数据模型是数据库管理系统中用来表示实体及实体间联系的方法。( )A. 错误B. 正确 6. 有备注型字段的表文件,当删除所对应的表备注文件后,该表文件仍可打开。( )A. 错误B. 正确
7. 在表单的常用方法中,显示表单的方法是SHOW。( )A. 错误B. 正确 8. 不同数据记录的记录编号可以是相同的。( )A. 错误B. 正确 9. 若当前记录号为1,则函数BOF( )的值可能为.T.,也可能为.F. 。( )A. 错误B. 正确 10. 查询文件不能更新数据表中的数据。 ( )A. 错误B. 正确 三、主观填空题(共 10 道试题,共 20 分。)V
1. 对已经打开的学生成绩表文件STUD.DBF,按学号字段的降序建立结构复合索引,标示名为学号,应使用的命令是。
index on 学号 tag 学号 DESCENDING
2. 求STUD表中所有男生的高考成绩的平均值,并将结果存入变量man中,可使用的命令是。
aver 高考成绩 for 性别=\男\
3. 在SQL查询时,使用where子句指出的是:。 查询条件
4. 在检索过程中,经常使用LOCATE命令定位,其后继命令是。 continue
5. 统计STUD表中所有女生的人数,并将结果存入变量woman中,可使用的命令是。 count for 性别=\女\
6. 打开一个空表,函数EOF()的值为。 .t.
7. 在一个有10条记录的表中,执行LIST命令后,再执行SKIP -5,这时记录指针指向第条记录。 6
8. 显示STUD表中所有男生的学号、姓名、性别、班级名、系别代号,可使用的命令是。 list 学号,姓名,性别,班级名,系别代号 for 性别=\男\
9. 在关系模型中,把数据看成是二维表,每一个二维表称为一个 。 关系
10. 学生档案表中有性别(c,2)和民族(c,8),要求找出所有民族是回族的女同学纪录的查找条件是。
性别=”女” and 民族=”回族”
四、论述题(共 3 道试题,共 30 分。) 1. 程序设计题
有如下售书数据表BOOK.DBF,BOOK.DBF中的记录如下:(10分) 书号 单价 数量 总计
B0168 19.8 3 B6915 12.6 36 B9023 40.0 100 B4682 18.0 40 B6329 28.0 56 B8127 2.0 20
要逐条计算总计并填入“总计”字段之中,计算按照如下规则: 若数量小于等于10,总计等于“单价*数量”
若数量大于50,总计等于“单价*数量*(1-5/100)”
若数量在11与50之间,总计等于“单价*数量(1-10/100)”
SET TALK OFF CLEAR USE BOOK
DO WHILE NOT EOF() IF 数量<=10 REPLACE 总计 WITH 单价*数量 ENDIF
IF 数量>50 REPLACE 总计 WITH 单价*数量*(1-5/100) ENDIF
IF 数量>=11 AND 数量<=50 REPLACE 总计 WITH 单价*数量*(1-10/100) ENDIF SKIP ENDDO
SET TALK ON RETURN
2. 程序设计题
程序设计:假设约定年龄不超过35岁的职工为青年职工;年龄在36岁至45岁的职工为中年职工;年龄超过45岁的职工为老年职工。从键盘输入任一职工姓名在STUD表中查找,显示其姓名、年龄以及所属的职工类型。
SET TALK OFF CLEAR USE STUD
ACCEPT '请输入所查的姓名: ' TO XM LOCATE FOR 姓名=XM IF .NOT. FOUND()
?”查无此人” ELSE
NL=YEAR(DATE())-YEAR(出生日期)
DO CASE
CASE NL<=35
?姓名,NL,”青年职工” CASE NL>35 .AND. NL<=45 ? 姓名,NL,”中年职工” OTHERWISE
? 姓名,NL,”老年职工”
ENDCASE
ENDIF USE
SET TALK ON RETURN
3. 程序设计:从键盘输入N个数存入数组A中,找出其中的最大数。
SET TALK OFF CLEAR
INPUT “N=?” TO N DIMENSION A(N) FOR I=1 TO N
INPUT \输入一个数\ TO A(I) ENDFOR
MAX=A(1) &&给存放最大数的变量MAX赋初值 FOR I=2 TO N
IF A(I) >MAX MAX=A(I) ENDIF ENDFOR
?”MAX=”,MAX SET TALK ON RETURN
在算法的4个特性中,算法必须能在执行有限个步骤之后终止指的是算法的__________特性。
【解析】算法的4个基本特性包括:可靠性、确定性、有穷性和拥有足够的情报,其中,算法的有穷性指的是算法必须在有限的时间内完成,即算法必须在执行有限个步骤之后终止。 (2)栈中允许进行插入和删除的一端叫做__________。
【解析】栈是限定在表的一端进行插入和删除操作的线性表。在表中,允许插入和删除的一端叫做\栈顶\,不允许插入和删除的一端叫做\栈底\。 (3)简单的交换排序方法是__________。 【解析】交换排序是指借助数据元素之间的互相交换进行排序的一种方法,冒泡排序是一种最简单的交换排序方法,它是通过相邻元素之间的相互交换逐步将线性表变成有序。
(4)Jackson方法是一种面向________的结构化方法。 方法。
【解析】Jackson方法是一种结构化分析方法,它是一种面向数据结构的方法。 (6)项目管理器中,用于显示应用程序中所有的文件的是\选项卡。
【解析】项目管理器一共有6个选项卡,其中\数据\、\文档\、\类\、\代码\和\其他\个选项卡用来分类显示各种文件,\全部\选项卡则显示所有的文件,实现对它们的管理。 (7)自由表与数据库表相比较,在自由表中不可以建立____________索引。
【解析】自由表不能建立字段级规则和约束等。事实上,数据库表与自由表相比,数据库表具有如下特点:
l 数据库表可以使用长表名,在表中可以使用长字段名; l 可以为数据库表中的字段指定标题和添加注释; l 可以为数据库表的字段指定默认值和输入掩码; l 数据库表的字段有默认的控件类;
l 可以为数据库表规定字段级规则和记录级规则;数据库表支持主关键字、参照完整性和表之间的关联;
l 支持INSERT、UPDATE和DELETE事件的触发器。
(8)\报表控件\工具栏中的\图片/ActiveX绑定\控件用于显示图片和______字段的内容。 【解析】Visual FoxPro在打开\报表设计器\窗口的同时也会打开一个\报表控件\工具栏。该工具栏的有多个图标按钮,每个按钮有不同的功能。其中\图片/ActiveX绑定控件\按钮的功能是用于显示图片和通用型字段的内容。
(9)在Visual FoxPro中,当复选框______的属性值为\时,表示复选框为选中状态。 【解析】复选框用于标识一个两值状态,如真(.T.)或假(.F.)。当处于选中状态时,复选框内显示一个对勾;否则,复选框内为空白。复选框可以通过Value属性来设置或返回复选框的状态。
(10)利用SQL语句的定义功能,建立一个\班级\表文件,其中为\班级号\建立主索引,\班级名\的默认值为\,语句格式为: CREATE TABLE 学生(;
学号 C(5) PRIMARY KEY;
班级名 C(16) _______ \计算机\【解析】在Visual FoxPro中可以通过SQL的CREATE TABLE 命令建立表。其中,通过DEFAULT短语可以为指定字段建立默认值。
(11)通过Visual FoxPro的视图,不仅可以查询数据库表,还可以______数据库表。 【解析】在Visual FoxPro中,视图是可以更新的,但是这种更新是否反映在基本表中则取
决于视图更新属性的设置。在关系数据库中,视图始终不曾真正地含有数据,它总是原来表的一个窗口。所以,虽然视图可以像表一样进行各种查询,但是插入、更新、删除操作在视图上却有一定的限制。一般情况下,当一个视图是由单个表导出时可以进行插入和更新操作,但不能进行删除操作;当视图是从多个表导出时,插入、更新和删除操作都不允许进行。 12)为了通过视图更新基本表中的数据,需要在视图设计器界面的左下角选中_____选框。 【解析】视图是根据基本表派生出来的,但是在Visual FoxPro中它已经不完全是操作基本表的窗口,在一个活动周期内视图和基本表已经成为两张表,默认对视图的更新不反映在基本表中,对基本表的更新在视图中也得不到反映。但是在关闭数据库后视图中的数据将消失,当再次打开数据库时视图从基本表中重新检索数据。所以默认情况下,视图在打开时从基本表中检索数据,然后构成一个独立的临时表供用户使用。
为了通过视图能够更新基本表中的数据,需要在视图设计器界面的左下角中勾选\发送SQL更新\复选框。
(13)使用SQL语句实现将一条新的记录插入\工资\表中:
INSERT _______ 工资(职工号,实发工资) VALUES(\
【解析】INSERT命令用于在一个表中添加新记录,然后给新记录的字段赋值。格式为: INSERT INTO 表名 [(列名1[,列名2,?])] VALUES (表达式1[,表达式2,?])
l INTO表名:指出了要添加新记录的表名。
l 列名1[,列名2,?]:字段名表,插入记录不完整时使用。 l VALUES指出要输入到新记录的指定字段中的数据值。 如果省略前面的字段名表,将按照表结构中定义的顺序依次指定每个字段的值。添加新记录后,该字段所包含的数值就是VALUES子句中所包含的数据。
(15)在\成绩\表中,检索选修4门以上课程的男生的姓名和平均成绩。\成绩\表中包含学号、姓名、课程名称和成绩4个字段。请将下面的SQL语句补充完整。 SELECT 姓名,AVG(成绩) AS 平均成绩 FROM 成绩; WHERE 性别=\男\GROUP BY 学号; _____ COUNT(*)>=4
【解析】在实际的应用中,除了简单的计算查询外,我们还可以加上GROUP BY子句进行分组计算查询。
通常来说,一个计算函数的范围是满足WHERE子句指定条件的所有记录。当加上GROUP BY子句后,系统会将查询结果按指定列分成集合组。当一个计算函数和一个GROUP BY子句一起使用时,计算函数的范围变为每组所有的记录。也就是说,一个结果是由组成一组的每个记录集合产生的。
另外,使用HAVING子句可以对这些组进一步加以控制。用这个子句定义这些组所必须满足的条件,以便将其包含在结果中。
本题中,根据\学号\将学生记录分组,然后利用SQL的统计函数COUNT(),统计选修4门课程以上的学生记录,并利用AVG()函数求平均分。
(1)按照逻辑结构分类,结构可以分为线性结构和非线性结构,栈属于__________。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库2016年石油华东《Visual-FoxPro》在线考试(2)在线全文阅读。
相关推荐: