VF第四章作业解析.docx

上传人:b****6 文档编号:7335969 上传时间:2023-01-23 格式:DOCX 页数:16 大小:534.77KB
下载 相关 举报
VF第四章作业解析.docx_第1页
第1页 / 共16页
VF第四章作业解析.docx_第2页
第2页 / 共16页
VF第四章作业解析.docx_第3页
第3页 / 共16页
VF第四章作业解析.docx_第4页
第4页 / 共16页
VF第四章作业解析.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

VF第四章作业解析.docx

《VF第四章作业解析.docx》由会员分享,可在线阅读,更多相关《VF第四章作业解析.docx(16页珍藏版)》请在冰豆网上搜索。

VF第四章作业解析.docx

VF第四章作业解析

第四章作业

1.

若要建立一个日销售文件(营销员代号、品名、数量、单价、营销额),每笔营业产生一个记录,但营业额字段的值因未填写而都为0.00,试编制程序查询某营业员的全天营业额。

CLEAR

SETTALKOFF

USErxs.dbf

REPLACEALL营业WITH数量*单价

@5,10SAY"查询营业员全天营业额"

INPUT"请输入营业员代号:

"TOdh

SUM营业额FOR营业员代号=dhTOyy

@9,4SAY"营业员"+dh+"的全天营业额是:

"+STR(yy,10,2)+"元"

USE

SETTALKON

2.若要修改某设备的价格和部门,试编写程序。

CLEAR

USEsb

@5,10SAY"修改设备的价格和部门"

?

INPUT"请输入设备号:

"TOsbbh

LOCATEFOR编号=sBBH

IFFOUND()

INPUT"请输入设备价格:

"TOsbjg

INPUT"请输入设备部门:

"TOsbbM

REPLACE价格WITHsbjg,;

部门WITHsbbM

?

DISPLAYFIELDS编号,名称,价格,部门

WAIT"......请检查修改后的记录,按任意键结束......"

ELSE

@12,20SAY"无此设备!

"

ENDIF

USE

3.在某程序中加一段程序,要求能累计程序运行的次数,试写出程序段。

(提示:

可将程序执行次数存储在一个表中)

IFFILE("Yxcs.dbf")

USEyxcs

REPLACE运行次数WITH运行次数+1

ELSE

CREATETABLEyxcs(运行次数n(5,0))

INSERTINTOyxcs VALUES

(1)

ENDIF

USE

4.编制一个通用的交换记录的程序,即要求对换某表中任意的两个记录。

5输入一个字符串,要求统计出其中的英文字母,空格,数字和其他字符的个数。

6.已知成绩。

DBF有学号,平时,考试,等级等字段,前三个字段已经存有数据,请以平时的20%加考试的80%来评定等级。

90分以上为优,75—89为良,60---74为及格,60分以下为不及格。

10、试编程序,把SB.DBF的内容移入二维数组。

Clear

Usesb

Copytoarraysbsz

?

”二维数组sbsz存放的数据:

?

?

Fori=1torecount()

Forj=1to6

?

?

sbsz(i,j),space

(2)

Next

?

Endfor

Use

11、试编写程序,将SB,DBF的记录转置显示。

Clear

Usesb

Countton

Copytoarraysbsz

Fori=1ton

Forj=1to6

@i*2,(j-1)*10+1saysbsz(i,j)function’B’

Next

?

Endfor

Wait”………SB.DBF正常显示……….”

Clear

Fori=1to6

Forj=1ton

@i*2,(j-1)*10+1saysbsz(j,i)function‘B’

Next

?

Wait“……….SB.DBF转置显示…………”

Use

12、设计一个计算存款本息的自定义函数。

程序如下:

1、当函数包含在调用程序中,函数定义如下:

Functionvt

Parametersp,i,y

T=p*(1+i*y)

Returnt

2、若自定义函数作为一个独立的文件,函数定义如下:

Parametersp,i,y

T=p*(1+i*y)

Returnt

13,请分别把求结成的功能设计为子程序、过程、自定义函数,并在计算5!

-3!

+7!

时进行调用。

解:

设计为子程序如下

用子程序调用结果如下:

设计为过程如下:

调用结果如下:

设计为函数如下:

调用结果如下:

14,读程序,写出运行结果。

解:

(1)

运行结果为:

(2)

运行结果如下:

15.编制通讯录管理程序,要求具有如下功能:

(1)纪录输入,修改,插入与删除;

(2)能分别以性命、邮政编码升序显示纪录

(3)能按姓名查询纪录。

解:

程序如下:

*ex4-15.prg

settalkoff

setsafetyoff

clear

use通信录.dbf

text

endtext

dowhile.t.

@8,0clear

@8,34say""

inputspace(34)+"请输入0~6:

"toxz

docase

casexz=1

dosr

casexz=2

doxg

casexz=3

docr

casexz=4

dosc

casexz=5

doxs

casexz=6

docx

casexz=0

wait"系统将关闭!

"windowtimeout1

exit

endcase

enddo

use

clear

settalkon

setsafetyon

proceduresr

?

"记录输入结束后按Ctrl+W存盘."

append

procedurexg

?

"记录修改结束后按Ctrl+W存盘."

go1

browse

procedurecr

?

"将浏览窗口中的光标移到新记录要插入的位置,按ESC继续."

browse

jlh=recno()

ifrecno()

gojlh+1

copytoqyrest

gojlh+1

deleterest

pack

appendblank

appendfromqy

deletefileqy.dbf

gojlh+1

else

appendblank

endif

@8,0clear

@24,0say"输入要插入的数据,然后按CTR+W存盘退出."

browse

proceduresc

?

"选定要删除的记录,在按标题栏中的提示,选择F5或F6操作."

pushkeyclear

onkeylabelf5doschf

onkeylabelf6dopk

browsetitle'通信录'+'F5:

删除/恢复F6:

清楚'

procedureschf

ifdeleted()

recall

else

delete

endif

procedurepk

pack

procedurexs

?

"选择F5按姓名拼音顺序显示,选择F6按邮政编码升序显示,按ESC键结束显示."

pushkeyclear

onkeylabelf5doxmpy

onkeylabelf6doyzbm

browsetitle'通信录'+'F5:

姓名拼音排序F6:

邮政编码升序';

noappendnomodify

procedurexmpy

indexon姓名tagxm

btowsetitle'通信录'+按姓名拼音顺序排序';

noappendnomodify

returntomaster

procedureyzbm

indexon邮政编码tagybm

browsetitle'通信录'+'按邮政编码升序显示';

noappendnomodify

returntomaster

procedurecx

flag='1'

dowhileflag='1'

@8,0clear

@8,5say""

inputspace(5)+"请输入姓名(可以只输入姓名中的一个或几个字):

";

toycxm

read

ycxm1=alltrim(ycxm)

locatefor"&ycxm1"$姓名

iffound()

?

'按ESC键继续...'

browsetitle'通信录'+space(5)+'&ycxm'+'资料';

for"&ycxm1"$姓名;

noappendnomodify

else

@10,5say"查无此人!

"

endif

@20,0clear

@20,5say""

inputspace(5)+'是否继续查询(Y/N):

"toyn

ifupper(yn)="N"

flag='0'

endif

Enddo

运行结果如下:

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

当前位置:首页 > 小学教育 > 语文

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

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