VFP平时上机练习题电子版参考答案.docx

上传人:b****3 文档编号:3461839 上传时间:2022-11-23 格式:DOCX 页数:11 大小:18.39KB
下载 相关 举报
VFP平时上机练习题电子版参考答案.docx_第1页
第1页 / 共11页
VFP平时上机练习题电子版参考答案.docx_第2页
第2页 / 共11页
VFP平时上机练习题电子版参考答案.docx_第3页
第3页 / 共11页
VFP平时上机练习题电子版参考答案.docx_第4页
第4页 / 共11页
VFP平时上机练习题电子版参考答案.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

VFP平时上机练习题电子版参考答案.docx

《VFP平时上机练习题电子版参考答案.docx》由会员分享,可在线阅读,更多相关《VFP平时上机练习题电子版参考答案.docx(11页珍藏版)》请在冰豆网上搜索。

VFP平时上机练习题电子版参考答案.docx

VFP平时上机练习题电子版参考答案

一、项目、数据库和表操作

(一)

1.

(2)表的有效性规则:

xsj<=1.2*cbj或xsj<=cbj*1.2

(3)设置BH字段的格式码:

T

(4)创建一个主索引,索引标识:

abcd索引类型:

主索引索引表达式:

bh

2.设置js表的插入触发器的表达式:

LEN(ALLTRIM(gh))=6

3.

REPLACEbzWITH"学科带头人"FORzc="教授"

UPDATEjsSETbz="学科带头人"WHEREzc="教授"

(二)

1.

(3)设置字段csrq的有效性规则:

csrq>={^1980-01-01}或csrq>{^1979-12-31}或Year(csrq)>=1980

(4)索引表达式:

STR(YEAR(DATE())–YEAR(csrq))+xm

2.设置js表的删除触发器的表达式:

.F.

3.

REPLACEALLbzWITH"一本招生";

FORLEFT(yxzydm,2)="11"

UPDATEyxzySETbz="一本招生";

WHERESUBSTR(yxzydm,1,2)="11"

注:

在SETEXACTOFF的设置下,条件表达式可以是:

yxzydm="11"

(三)

1.

(2)设置BH1的输入掩码为:

AXXX或A999

(3)设置字段BH1的有效性规则:

LEFT(BH1,1)=LEFT(BH2,1)

(4)索引表达式:

BH1+xh

2.设置jc表的删除触发器的表达式:

left(cbnf,4)<‘2000’

3.UPDATEcjSETbz="选修"WHEREkcdm="9501"

 

(四)

1.

(2)设置rq字段的默认值:

DATE()

(3)设置表的有效性规则:

kpsl<=xssl或xxsl>=kpsl

(4)索引表达式:

DTOC(rq,1)+bh或DTOS(rq)+bh

2.设置jc表的插入触发器的表达式:

SUBSTR(isbn,1,2)="IS"或isbn=“IS”或left(isbn,2)=“IS”

3.UPDATEcjSETpscj=85

二、设计查询

(一)

(1)添加表:

kcap,kc以kcdm作为联接条件

(2)输出字段:

Kcap.xqbmAS学期编码,COUNT(*)AS开课门数

SUM(Kc.kss)AS总课时数

(3)分组依据:

Kcap.xqbm

(4)排序依据:

Kcap.xqbm

(5)SELECT—SQL语句:

SELECTKcap.xqbmAS学期编码,COUNT(*)AS开课门数,;

SUM(Kc.kss)AS总课时数;

FROMjxsj!

kcapINNERJOINjxsj!

kc;

ONKcap.kcdm=Kc.kcdm;

WHEREKcap.bjbh="040202";

GROUPBYKcap.xqbm;

ORDERBYKcap.xqbm

(二)

(1)添加表:

kcap,kc以kcdm作为联接条件

(2)输出字段:

Kcap.bjbhAS班级编号,COUNT(*)AS开课门数

SUM(Kc.kss)AS总课时数

(3)分组依据:

Kcap.bjbh

(4)排序依据:

Kcap.bjbh

(5)SQL语句:

SELECTKcap.bjbhAS班级编号,COUNT(*)AS开课门数,;

SUM(Kc.kss)AS总课时数;

FROMjxsj!

kcapINNERJOINjxsj!

kc;

ONKcap.kcdm=Kc.kcdm;

WHEREKcap.xqbm="2004-2005学年第1学期";

GROUPBYKcap.bjbh;

ORDERBYKcap.bjbh

(三)

(1)添加表:

zzmm视图,js表以Zzmm.dm和Js.zzmm作为联接条件

(2)输出字段:

Js.zcAS职称,Zzmm.mcAS政治面貌名称

COUNT(*)AS人数,

AVG(YEAR(DATE())–YEAR(Js.csrq))AS平均年龄

(3)分组依据:

Js.zc,Zzmm.mc

(4)排序依据:

Js.zc,Zzmm.mc

(5)SQL语句:

SELECTJs.zcAS职称,Zzmm.mcAS政治面貌名称,;

COUNT(*)AS人数,;

AVG(YEAR(DATE())–YEAR(Js.csrq))AS平均年龄;

FROMjxsj!

zzmmINNERJOINjxsj!

js;

ONZzmm.dm=Js.zzmm;

GROUPBYJs.zc,Zzmm.mc;

ORDERBYJs.zc,Zzmm.mc

(四)

(1)添加表:

whcd视图,js表以Whcd.dm和Js.whcd作为联接条件

(2)输出字段:

Js.zcAS职称,Whcd.mcAS文化程度名称

COUNT(*)AS人数,

MIN(YEAR(DATE())-YEAR(Js.csrq))AS最小年龄

(3)分组依据:

Js.zc,Whcd.mc

(4)排序依据:

Js.zc,Whcd.mc

(5)SQL语句:

SELECTJs.zcAS职称,Whcd.mcAS文化程度名称,;

COUNT(*)AS人数,;

MIN(YEAR(DATE())-YEAR(Js.csrq))AS最小年龄;

FROMjxsj!

jsINNERJOINjxsj!

whcd;

ONJs.whcd=Whcd.dm;

GROUPBYJs.zc,Whcd.mc;

ORDERBYJs.zc,Whcd.mc

三、设计菜单

(一)

1.“文件”菜单项名称为:

文件(\

2.

在“文件”菜单的子菜单中增加一个菜单项:

打开

设置“打开”菜单项的结果为:

子菜单

在“打开”菜单的子菜单中设置两个菜单项:

数据库、表

设置“数据库”菜单项的“结果”列为“命令”,在其右侧的文本框中输入命令:

OPENDATABASE

3.在“文件”菜单的“打开”菜单项之后增加一个菜单项,在菜单名称中输入“\–”

(二)

1.将“文件”菜单项改为:

自定义(\

2.打开VFP主菜单显示/常规选项,在对话框中选择:

在“文件”之前

3.略

4.在“还原”菜单的“结果”列中选择“命令”,在其右侧的的文本框输入:

_SCREEN.BackColor=RGB(255,255,255)

(三)

2.打开VFP主菜单显示/常规选项,在对话框中选择:

追加

5.在“运行外部EXE程序”菜单项的“结果”列中选择:

过程。

再点击右侧的按钮,打开“过程”代码的编辑窗口,将题给代码输入并保存。

(四)

2.“PRG程序”菜单项设置为:

\

其余略

四、设计表单

(一)

1.

表单的Caption属性:

代码表

在数据环境中添加视图:

zzmm和whcd

表格的DeleteMark属性:

.F.ScrollBars属性:

2–垂直

2.

标签的Caption属性:

选择类型

组合框的Style属性:

2(下拉列表框)

3.

下拉列表框的RowSourceType属性:

1–值

下拉列表框的RowSource属性:

民族,政治面貌,文化程度

4.

下拉列表框的InterActiveChange事件代码:

DOCASE

CASEThis.Selected

(1)=.T.

ThisForm.Grdmz.RecordSource="mz"

CASEThis.Selected

(2)=.T.

ThisForm.Grdmz.RecordSource="zzmm"

CASEThis.Selected(3)=.T.

ThisForm.Grdmz.RecordSource="whcd"

ENDCASE

DOCASE

CASEThis.value=“民族”

ThisForm.Grdmz.RecordSource="mz"

CASEThis.value=“政治面貌”

ThisForm.Grdmz.RecordSource="zzmm"

CASEThis.value=“文化程度”

ThisForm.Grdmz.RecordSource="whcd"

ENDCASE

(二)

1.

表单的AutoCenter属性:

.T.

2.

下拉列表框的RowSource属性:

mz

3.

表格RecordSourceType属性:

4–SQL说明

表格RecordSource属性:

SELECTgh,xmFromjsINTOCURSORtemp

4.

文本框的Name属性:

Tmz

文本框的Value属性:

所有民族

文本框的Enabled属性:

.F.

5.

下拉列表框的InterActiveChange事件代码:

ThisForm.Tmz.Value=mz.mc

ThisForm.Grid1.RecordSource="SELECTgh,xmFROMjs;

WHEREmzdm=This.ValueINTOCURSORtemp"

6.

命令按钮的Caption属性:

退出(\

(三)

1.

表单的Caption属性:

代码表

表单的Icon属性:

pc.ico

表单的AutoCenter属性:

.T.

2.

在数据环境中添加视图:

zzmm和whcd

3.

选项按钮组的Name属性:

Mzw

利用选项按钮组的生成器设置:

按钮的数目:

3

按钮的标题分别为:

民族、政治面貌、文化程度

按钮布局:

水平

4.

选项按钮组的InterActiveChange事件代码:

DOCASE

CASEThis.Value=1

ThisForm.Grdmz.RecordSource="mz"

CASEThis.Value=2

ThisForm.Grdmz.RecordSource="zzmm"

CASEThis.Value=3

ThisForm.Grdmz.RecordSource="whcd"

ENDCASE

5.

命令按钮的Caption属性:

关闭(\

命令按钮的Click事件代码:

ReleaseThisForm

(四)

1.

表单的AutoCenter属性:

.T.

表单的BorderStyle属性:

2–固定对话框

2.

下拉列表框的RowSource属性:

mz

3.

标签的Name属性:

Lmz

标签的Caption属性:

所有民族

4.

表格RecordSourceType属性:

1–别名

表格RecordSource属性:

js

5.

表单的UserMethod方法程序代码:

(完善一条命令、在空行中增加一条命令)

PUBLICx

SELECTjs

X=ThisForm.Combo1.Value

SETFILTERTOmzdm=x

Thisform.Lmz.caption=mz.mc

ThisForm.Refresh

下拉列表框的InterActiveChange事件代码:

ThisForm.UserMethod

6.

命令按钮的Click事件代码:

REPORTFORMrtestPREVIEW

五、程序改错

(一)

m=SPACE(0)

STORE".86*75*85*87*67*78.32.70*81*90.80*84*81"TOc,cc

DOWHILELEN(c)>0

d=LEFT(c,1)

c=SUBS(c,2)

n=0

IFd="."

m=m+CHR(VAL(LEFT(c,2)))

ELSE

m=m+CHR(VAL(LEFT(c,2))+30)

ENDDO此处改为ENDIF

c=SUBS(c,2)此处改为c=SUBS(c,3)c=SUBS(c,3)

ENDDOENDIF

WAITWINDOWScc+"解密后的代码为:

"+m

(二)

CLEAR

DIMENSIONc(30)

FORi=1TO30&&第一个循环

n=CHR(64+MAX(1,MOD(INT(RAND()*100),27)))26

c(i)=n

ENDFOR

FORi=1TO30&&第二个循环

m=c(i)

FORt=i+1TO30

IFmc(t)

c(i)=c(t)

c(t)=m

m=c(i)

ENDIF

ENDDO此处改为ENDFORENDFOR

ENDFOR

DISPLAYMEMOLIKEc*

(三)

DIMESIONA(20)

FORi=1TO20

A(i)=INT(RAND()*100)

ENDFOR

Mmax=A(i)

Mmin=A(i)

?

A(i)

FORi=2TO20

?

STR(A

(1),3)此处改为?

?

STR(A(i),3)?

?

STR(A

(1),3)

IFMmax

Mmax=A(i)

ENDIF

IFMmin>A(i)

Mmin=A(i)

ENDIF

ENDFOR

?

"最大数是:

"+Mmax+"最小数是:

",MminSTR(Mmax,3)

"最大数是:

",Mmax,SPACE(10)+"最小数是:

",Mmin

最后一句改为:

?

"最大数是:

"+STR(Mmax)+"最小数是:

",Mmin

或?

"最大数是:

",Mmax,"最小数是:

",Mmin

(四)

c="数据库"

STORE0TOhz,yw,qt

DOWHILEc>0此处改为LEN(c)>0DOWHILELEN(c)>0

x=ASC(LEFT(c,1))

IFx>127

hz=hz+1

c=SUBS(c,3)

ELSE

IFx>64ANDX<91ORx>96ANDx<123

yw=yw+1

ELSE

qt=qt+1

ENDIF

c=SUBS(c,3)此处改为c=SUBS(c,2)c=SUBS(c,2)

ENDIF

ENDDO

WAITWIND"汉字:

"+STR(hz,4)+“英文字母:

”+STR(yw,4)+;

"其它字符:

"+STR(qt,4)

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

当前位置:首页 > 工作范文 > 制度规范

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

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