VFP春上机试题.docx

上传人:b****6 文档编号:6824645 上传时间:2023-01-10 格式:DOCX 页数:22 大小:203.97KB
下载 相关 举报
VFP春上机试题.docx_第1页
第1页 / 共22页
VFP春上机试题.docx_第2页
第2页 / 共22页
VFP春上机试题.docx_第3页
第3页 / 共22页
VFP春上机试题.docx_第4页
第4页 / 共22页
VFP春上机试题.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

VFP春上机试题.docx

《VFP春上机试题.docx》由会员分享,可在线阅读,更多相关《VFP春上机试题.docx(22页珍藏版)》请在冰豆网上搜索。

VFP春上机试题.docx

VFP春上机试题

上机部分

一、项目、数据库和表操作(12分)

练习1

打开T盘根目录下的项目文件JXGL,在该项目文件中已有一数据库JXSJ。

1.在JXSJ数据库中按如下表格所示的结构创建TAB.DBF表,并按表格后的要求设置相关属性。

字段名

数据类型

长度

字段标题

Cdcs

C

40

传递城市

Cdrq

D

传递日期

Cdrs

I

火炬手人数

Cdlxt

G

传递路线图

(1)设置TAB表的注释:

火炬传递城市信息表;

(2)设置Cdrq字段的有效性规则及信息:

传递日期必须在2008年8月8日前;

(3)将Cdrs字段的默认值设置为100;

(4)按Cdcs字段创建主索引,索引名为adcd。

2.在TAB表中输入如下记录:

Cdcs

Cdrq

Cdrs

Cdlxt

南京

2008/05/27

208

(插入lxt.jpg文件)“编辑”菜单—插入对象

3.设置CJ表的更新触发器,要求课程代码为“60023”的记录不允许修改。

4.已知JS表已存在主索引gh,索引表达式为gh,KCAP表已存在普通索引gh,索引表达式为gh,以JS表为主表,KCAP表为子表并按gh建立永久关系,并设置两表之间的参照完整性:

插入限制。

练习2

打开T盘根目录下的项目文件JXGL,在该项目文件中已有一数据库JXSJ。

1.在JXSJ数据库中按如下表格所示的结构创建TAB.DBF表,并按表格后的要求设置相关属性。

字段名

数据类型

长度

字段标题

Cdcs

C

40

传递城市

Bc

I

棒次

Xm

C

50

火炬手姓名

Jj

M

火炬手简介

(1)设置TAB表的注释:

火炬传递人员信息表;

(2)设置Bc字段的有效性规则及信息:

棒次必须在1至300之间;

(3)将Bc字段的默认值设置为1;

(4)创建候选索引,索引名为abcd,要求按传递城市和棒次顺序排列。

2.在TAB表中输入如下记录:

Cdcs

Bc

Xm

Jj

南京

1

杨阳

曾被誉为世界羽坛“四大天王”之首

3.修改JC表中的数据,将所有教材名称字段内容的两端加书名号“《》”,要求书名的最后一个字与右书名号“》”之间不允许留有空格。

4.设置JC表的删除触发器,要求只允许删除出版年份在2000年之前的记录。

5.已知YXZY表已存在主索引yxzydm,索引表达式为yxzydm,XS表已存在普通索引yxzydm,索引表达式为yxzydm,以YXZY表为主表,XS表为子表并按yxzydm建立永久关系,并设置两表之间的参照完整性:

更新级联。

练习3

打开T盘根目录下的项目文件jxgl,在该项目文件中已有一数据库jxsj。

1.在jxsj数据库中按如下表格所示的结构创建tab.dbf表,并按表格后的要求设置相关属性。

字段名

数据类型

长度

字段标题

xmbh

C

4

项目编号

xmmc

C

50

项目名称

jps

I

金牌数

xmjj

M

项目简介

(1)设置tab表的注释:

奥运项目信息表;

(2)设置jps字段的有效性规则及信息:

金牌数至多100;

(3)将jps字段的默认值设置为1;

(4)按xmbh字段创建主索引,索引名为abcd。

2.在tab表中输入如下记录:

xmbh

xmmc

jps

xmjj

0001

游泳

42

游泳项目繁多

3.按照成绩值修改自由表cjb表中的备注字段内容:

若成绩大于或等于90,则备注字段中的内容设置为“优秀”。

4.设置xs表的更新触发器,要求该表数据只能在上午8:

00至下午5:

00时间段内进行修改。

5.已知js表已存在主索引gh,索引表达式为gh,kcap表已存在普通索引gh,索引表达式为gh,以js表为主表,kcap表为子表并按gh建立永久关系,并设置两表之间的参照完整性:

删除限制。

练习4

打开T盘根目录下的项目文件jxgl,在该项目文件中已有一数据库jxsj。

1.在jxsj数据库中按如下表格所示的结构创建tab.dbf表,并按表格后的要求设置相关属性。

字段名

数据类型

长度

字段标题

playerid

C

4

运动员号码

playername

C

50

姓名

nation

C

16

国籍

game

C

20

参加项目

(1)设置tab表的注释:

运动员信息表;

(2)设置playerid字段的输入掩码,要求只允许输入4位数字字符;

(3)将nation字段的默认值设置为“中国”;

(4)按playeridh字段创建普通索引,索引名为abcd。

2.在tab表中输入如下记录:

playerid

playername

nation

name

0001

刘翔

中国

男子110米跨栏

3.按照成绩值修改自由表cjb表中的备注字段内容:

若成绩大于或等于90,则备注字段中的内容为“A”,若成绩大于或等于80且小于90,则备注字段中的内容为“B”。

4.设置jx表的更新触发器,要求工作日期在“1990/09/01”以前的记录才允许修改。

5.已知js表已存在主索引gh,索引表达式为gh,kcap表已存在普通索引gh,索引表达式为gh,以js表为主表,kcap表为子表并按gh建立永久关系,并设置两表之间的参照完整性:

插入限制。

练习5

打开T盘根目录下的项目文件jxgl,在该项目文件中已有一数据库jxsj。

1.在jxsj数据库中按如下表格所示的结构创建tab.dbf表,并按表格后的要求设置相关属性。

字段名

数据类型

长度

字段标题

bsxm

C

12

比赛项目

bssj

T

比赛时间

bscd

C

20

比赛场地

bsxz

C

6

比赛性质

(1)设置tab表的注释:

奥运赛程信息表;

(2)设置bsxz字段的有效性规则:

比赛性质只能是“预赛”、“半决赛”或“决赛”;

(3)将bsxz字段的默认值设置为“预赛”;

(4)创建一普通索引,索引名为abcd,要求按比赛和比赛项目排序。

2.在tab表中输入如下记录:

bsxm

bssj

bscd

bsxz

男子10米跳台

2008/08/2309:

00:

00

水立方游泳中心

决赛

3.设置kc表的更新触发器,要求只有课程代码长度为4的记录才允许修改。

4.已知kc表已存在主索引kcdm,索引表达式为kcdm,jc表已存在普通索引kcdm,索引表达式为kcdm,以kc表为主表,jc表为子表并按kcdm建立永久关系,并设置kc表和jc表两表之间的参照完整性:

更新限制、删除级联。

练习6

打开T盘根目录下的项目文件jxgl,在该项目文件中已有一数据库jxsj。

1.在jxsj数据库中按如下表格所示的结构创建tab.dbf表,并按表格后的要求设置相关属性。

字段名

数据类型

长度

字段标题

gj

C

18

国家或地区

jps

I

金牌数

yps

I

银牌数

tps

I

铜牌数

(1)设置tab表的注释:

奥运奖牌榜;

(2)设置jps字段的有效性规则及信息:

金牌数不能超过200枚;

(3)将jps字段的默认值设置为0;

(4)创建一普通索引,索引名为abcd,要求按金、银、铜牌总数降序排列。

2.在tab表中输入如下记录:

gj

jps

yps

tps

中国

42

50

25

3.设置kc表的更新触发器,要求课程类型为“专业核心课程”的记录不允许修改。

4.已知kc表已存在主索引kcdm,索引表达式为kcdm,jc表已存在普通索引kcdm,索引表达式为kcdm,以kc表为主表,jc表为子表并按kcdm建立永久关系,并设置kc表和jc表两表之间的参照完整性:

更新级联、删除限制。

练习7

打开T盘根目录下的项目文件jxgl,在该项目文件中已有一数据库jxsj。

1.在jxsj数据库中按如下表格所示的结构创建tab.dbf表,并按表格后的要求设置相关属性。

字段名

数据类型

长度

字段标题

cgmc

C

20

场馆名称

dz

C

50

地址

zws

I

座位数

cgzp

G

场馆照片

(1)设置tab表的注释:

奥运场馆信息表;

(2)设置zws字段的有效性规则及信息:

座位数必须介于1千至10万之间;

(3)将dz字段的默认值设置为“北京市”;

(4)按cgmc字段创建主索引,索引名为abcd。

2.在tab表中输入如下记录:

cgmc

dz

zws

cgzp

鸟巢

北京市

80000

(插入cgzpjpg文件)

3.设置jc表的更新触发器,要求只允许删除出版年份在“2000”年以前的记录。

4.已知yxzy表已存在主索引yxzydm,索引表达式为yxzydm,xs表已存在普通索引yxzydm,索引表达式为yxzydm,以yxzy表为主表,xs表为子表并按yxzydm建立永久关系,并设置yxzy表和xs表两表之间的参照完整性:

删除限制、插入限制。

二、设计查询(8分)

在TEST项目中已经存在查询chaxun

练习1

已知教材(JC)表存储了教材的基本信息,其中含出版社名称(CBSMC,C)、出版年月(CBNF,C)、定价(DJ,N,5.1)等字段。

按如下要求修改JXGL项目中的查询CHAXUN:

基于JC表统计各出版社2000年以后(含2000年)出版的教材种数及平均定价。

要求输出出版社名称、教材种数、平均定价(字段名依次分别为CBSMC、JCZS和PJDJ),查询结果按教材种数排序,输出去向为屏幕(即主窗口)。

(注:

JC表中每条记录为一种教材。

练习2

已知教材(JC)表存储了教材的基本信息,其中含出版社名称(CBSMC,C)、出版年月(CBNF,C)、定价(DJ,N,5.1)等字段。

按如下要求修改JXGL项目中的查询CHAXUN:

基于JC表统计各年份(CBNF字段的前6个字符)出版的教材种数及平均定价。

要求输出年份、教材种数、平均定价(字段名依次分别为NF、JCZS和PJDJ),查询结果按降价排序,且输出JCZS大于或等于5的记录,输出去向为TEMP.TXT文件。

(注:

JC表中每条记录为一种教材。

练习3

已知学生(xs)表存储了学生的基本信息,其中含学号(xh,C)、姓名(xm,C)等字段;成绩(cj)表中存储了学生的考试成绩,其中含学号(xh,C)、成绩(cj)等字段,每条记录为一位学生一门课程的考试成绩(成绩以百分制计,低于60分为不及格)。

按如下要求修改jxgl项目中的查询chaxun:

基于xs表和cj表统计各位学生的考试情况。

要求:

输出学号、姓名、考试门数和不及格门数(字段名依次分别为xh、xm、ksms和bjgms),查询结果按不及格门数排序,且仅输出bjgms大于或等于1的记录。

练习4

已知学生(xs)表存储了学生的基本信息,其中含学号(xh,C)、姓名(xm,C)等字段;成绩(cj)表中存储了学生的考试成绩,其中含学号(xh,C)、成绩(cj)等字段,每条记录为一位学生一门课程的考试成绩(成绩以百分制计,低于60分为不及格)。

按如下要求修改jxgl项目中的查询chaxun:

基于xs表和cj表查询成绩优良的学生(“成绩优良”是指平均成绩大于或等于80,且最低成绩大于或等于65)。

要求:

输出学号、姓名、平均成绩和最低成绩(字段名依次分别为xh、xm、pjcj和zdcj),查询结果按平均成绩降序排序。

 

练习5

已知学生(xs)表存储了学生的基本信息,其中含学号(xh,C)、姓名(xm,C)、性别(xb,C)等字段;院系专业(yxzy)表为院系专业代码名称对照表,含院系专业代码(yxzydm,C)、院系名称(yxmc,C)字段。

按如下要求修改jxgl项目中的查询chaxun:

基于xs表和yxzy表查询各院系的学生人数及男女生人数。

要求:

输出院系名称、人数、男生人数和女生人数(字段名依次分别为yxmc、rs、nanrs和nvrs),查询结果按人数降序排序,人数相同时按女生人数降序排列。

练习6

已知学生(xs)表存储了学生的基本信息,其中含学号(xh,C)、姓名(xm,C)、性别(xb,C)、民族代码(mzdm,C)等字段,学号的前两个字符表示学生的年级(例如,“04”表示04级学生),民族代码为“01”表示汉族;院系专业(yxzy)表为院系专业代码名称对照表,含院系专业代码(yxzydm,C)、院系名称(yxmc,C)字段。

按如下要求修改jxgl项目中的查询chaxun:

基于xs表和yxzy表查询各院系的学生人数及汉族学生人数。

要求:

输出院系名称、学生人数、汉族学生人数(字段名依次分别为jib、yxmc、rs和hanrs),查询结果输出到屏幕(即主窗口)。

练习7

已知教师(js)表存储了每名教师的基本信息,其中含性别(xb,C)、文化程度代码(whcd,C)、出生日期(csrq,D)等字段,视图whcd为文化程度代码与名称对照表,含文化程度代码(dm,C)和文化程度名称(mc,C)字段。

按如下要求修改jxgl项目中的查询chaxun:

基于js表和whcd视图,统计各类文化程度的人数和工作时的平均年龄。

要求:

输出文化程度代码、文化程度名称、人数和工作时的平均年龄(字段名依次分别为dm、mc、rs和pjnl),查询结果按平均年龄降序排序,输出去向为表文件temp。

(注:

教师的年龄按当前年份减去出生年份的年份)

三、设计菜单(5分)

练习1

JXGL项目中已存在菜单menu,已定义了“系统管理”菜单栏及其中的“恢复系统菜单”菜单项。

按如下要求设计菜单,完成后的运行效果如图1所示。

1.为“教材信息”菜单栏,其访问键为J,子菜单为“编辑”和“浏览”和“统计”,分组线如图1所示;

2.为“编辑”菜单项设置跳过条件,使该菜单项不可用;

3.为“统计”菜单创建子菜单“出版社”和“出版年月”;

4.为“出版社”菜单项设置快捷键CTRL+B,并为其设置过程代码:

首先清除屏幕(即主窗口),然后运行查询文件CHAXUN.QPR。

练习2

JXGL项目中已存在菜单menu,已定义了“系统管理”菜单栏及其中的“恢复系统菜单”菜单项。

按如下要求设计菜单,完成后的运行效果如图1所示。

1.为“教材管理”菜单栏,其访问键为B,子菜单为“修改”、“浏览”和“统计”,分组线如图1所示;

2.为“修改”菜单项设置跳过条件,使该菜单项不可用;

3.为“统计”菜单创建子菜单“出版社”和“出版年份”;

4.为“出版年份”菜单项设置快捷键CTRL+Y,并为其设置过程代码:

首先运行查询文件CHAXUN.QPR,然后利用MESSAGEBOX()函数显示提示信息“结果保存在TEMP.TXT文件中”。

练习3

JXGL项目中已存在菜单menu,已定义了“系统管理”菜单栏及其中的“恢复系统菜单”菜单项。

按如下要求设计菜单,完成后的运行效果如图1所示。

1.在“系统管理”菜单栏中插入VFP系统菜单“导入”和“导出”。

2.创建“成绩管理”菜单栏,其访问键为C,子菜单为“录入”、“编辑”、“查询”和“打印”,分组线如图1所示;

3.为“打印”菜单项设置快捷键“CTRL+Y”,并为其设置命令:

预览报表文件rtest。

练习4

JXGL项目中已存在菜单menu,已定义了“系统管理”菜单栏及其中的“恢复系统菜单”菜单项。

按如下要求设计菜单,完成后的运行效果如图1所示。

1.在“系统管理”菜单栏中增加“备份数据”、“恢复数据”和“退出”菜单项,其中“退出”菜单项为VFP系统菜单,分组线如图1所示。

2.为“备份数据”菜单创建子菜单“所有文件”、“数据库文件”和“表文件”,分组线如图1所示;

3.为“所有文件”菜单项设置快捷键“CTRL+A”,并为“表文件”菜单项设置过程:

首先关闭所有的表,然后将xs表复制到T盘根目录中。

练习5

JXGL项目中已存在菜单menu,已定义了“系统管理”菜单栏及其中的“恢复系统菜单”菜单项。

按如下要求设计菜单,完成后的运行效果如图1所示。

1.在“系统管理”菜单栏中增加“帐户设置”和“选项”菜单项,其中“选项”菜单项为VFP系统菜单,分组线如图1所示。

2.创建“学生管理”菜单栏,其访问键为X,其子菜单为“基本信息”和“统计信息”,分组线如图1所示;

3.为“按性别统计人数”菜单项设置SELECT-SQL命令:

查询并显示xs表中男女生人数,要求输出性别和人数(字段名分别为xb和rs)。

练习6

JXGL项目中已存在菜单menu,已定义了“系统管理”菜单栏及其中的“恢复系统菜单”菜单项。

按如下要求设计菜单,完成后的运行效果如图1所示。

1.在“系统管理”菜单栏中增加“密码设置”和“退出”菜单项,分组线如图1所示。

2.为“退出”菜单项设置快捷键F12,设置过程:

首先清除事件循环,然后退出系统。

3.创建“系统帮助”菜单栏,其访问键为H,子菜单为“帮助主题”、“目录”、“索引”和“检索”。

练习7

JXGL项目中已存在菜单menu,已定义了“系统管理”菜单栏及其中的“恢复系统菜单”菜单项。

按如下要求设计菜单,完成后的运行效果如图1所示。

1.在“系统管理”菜单栏中增加“帐户设置”、“系统设置”和“退出”菜单项,其中“退出”菜单项为VFP系统菜单,并为“退出”菜单项设置快捷键F12,分组线如图1所示。

2.创建“教师信息”菜单栏,其访问键为J,其子菜单为“基本信息”、“统计信息”和“其他”,分组线如图1所示;

3.为“统计信息”设置跳过条件:

若当期目录(文件夹)不存在文件temp.dbf,则该菜单不可用(即跳过)。

4.为“统计信息”设置SELECT-SQL命令:

浏览demp.dbf表中的数据。

四、设计表单(10分)

练习1

表单F081E的功能是:

用鼠标在表单上写汉字等操作。

按下列要求修改表单,修改后表单运行时如图2所示。

1.设置表单的有关属性,使其标题为“鼠标写字”,边框样式属性为“固定对话框”,背景颜色为“黄色”。

2.如图2所示在表单的上部添加一个标签控件,用来显示鼠标的位置,并将其对象名改为COORD,背景样式设置为“透明”。

3.在表单的下部添加一个文本框控件(对象名为Text1)和计时器控件(对象名为Timer1),并设置计时器控件的有关属性,使得表单运行时触发计时器事件的间隔时间为5秒。

4.编写计时器控件的Timer事件代码,实现在文本框中显示当前的系统日期和时间。

练习2

表单F081F的功能是:

通过连续播放BMP位图文件产生动画效果。

按下列要求修改表单,修改后表单运行时如图2-1、图2-2所示。

1.设置表单的有关属性,使其标题为“播放动画”,且无最大化、最小化按钮。

2.在“播放”命令按钮下方添加一个命令按钮,其标题属性设置为“退出”,且编写其Click事件代码,其功能是释放表单。

3.完善“播放”命令按钮的Click事件代码,其功能是:

单击该按钮则其标题在“播放”与“停止”之间切换(即播放动画时显示“停止”,停播时显示“播放“),并且如果单击的是”停止“按钮,则将计时器对象设置为不可使用。

练习3

在T盘中有10个图片文件1.BMP、2.BMP、…、10.BMP。

表单F081F的功能是:

通过连续播放BMP文件产生动画效果。

按下列要求修改表单,修改后表单运行时如图2所示。

1.将命令按钮的Left、Top属性分别修改为100和95。

2.设置表单的有关属性,使其标题为“播放二幅动画”,高度为140,宽度为210,且使其运行时自动居中。

3.在图像对象(Image1)右方添加一个图像对象(Image2)。

4.在计时器对象的Timer事件代码的末尾,添加一条命令,使Image2显示图片的顺序为10.BMP、9.BMP、…1.BMP。

5.修改“播放”命令按钮的Click事件代码:

保留第3条命令,删除其余命令。

练习4

表单F081E的功能是:

用鼠标在表单上写文字等操作。

按下列要求修改表单,修改后表单运行时如图2所示。

1.将表单的标题设置为“鼠标写字与小球移动”,边框样式设置为“固定对话框”。

2.在表单界面的右下方添加形状控件,并设置形状控件的有关属性,使其形状为圆形,背景颜色为红色。

3.修改表单的MouseDown事件代码,其功能是:

使表单前景颜色为蓝色以实现用鼠标在表单界面上写的文字为蓝色,并修改表单的MouseMove事件代码,删除其中的第六行语句(该语句为THISFORM.Coord.Caption=”(“+……)。

4.将表单对象新方法XYZ中的代码复制到形状控件的Click方法程序中。

练习5

表单F081g的功能是:

表单上显示奥运会五环图标和“2008北京”字样等。

按下列要求修改表单,修改后表单运行时如图2所示。

1.在表单的Activate事件代码的第2条命令后添加一条命令,实现表单运行开始时标题从右向左移动显示。

2.分别修改对象名为S1、S2、S3、S4、S5的五个形状控件的有关属性:

形状为“圆形”,边框颜色(BorderColor属性)分别为蓝色、黄色、黑色、绿色、红色,背景样式(BackStyle属性)为透明,边框宽度为3。

3.在表单的下方添加一个控件,并设置有关属性:

标题为“2008北京”,字号为16.前景颜色为红色。

4.将表单的背景颜色设置白色。

练习6

表单F081g的功能是:

表单上显示奥运会五环图标等。

按下列要求修改表单,修改后表单运行时如图2所示。

1.在表单的下方添加一个命令按钮控件,并将其标题设置为“显示”,将表单的新方法COL的程序代码复制到该命令按钮的Click事件代码中。

2.完善命令按钮的Click事件代码(在程序末尾添加4条命令),其功能是设置S5形状控件的有关属性:

形状设置为圆形,边框颜色(BorderColor属性)设置为红色,背景(BackStyle属性)设置为透明,边框宽度设置为3。

3.将表单的背景颜色设置为白色,并将标题修改为“同一个世界,同一个梦想”。

 

练习7

表单F081h上有一个命令按钮(cmdcj)和一个计时器(Timer1)控件,其功能是:

从学生表(xs)中抽取学生学号和姓名。

按下列要求修改表单,修改后表单运行时如图2所示。

1.设置表单的标题属性为“抽奖”,边框类型为“固定对话框”。

2.在表单的右方添加一个命令按钮控件,并设置标题为“退出”。

3.编写新添加的命令按钮的Click事件代码,其功能是释放表单。

4.在命令按(cmdcj)的下方添加一个列表框控件(对象名为List1)。

5.在计时器对象的Timer事件代码的末尾,添加一条命令,使得命令按钮(cmdcj)的标题显示当前记录中xh和xm字段值。

五、程序改错(5分)

练习1:

下列程序的功能是:

删除字符串(不包括汉字)中的空格,并将它按字符从小到大的顺序排列以后输出。

例如,字符串“BCefA“,输出结果为”ABCef“。

要求:

①将下列程序输入到项目中的程序文件PCODE中,并对其中的2条错误语句进行修改;

②在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。

CLEAR

x=’BCefA’

y=’’

x=STRTRAN(x,SPA

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 社交礼仪

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1