VF实验三 结构化程序设计.doc
文本预览下载声明
实验三 结构化程序设计
实验目的:
(1)熟练掌握程序文件的建立、保存、运行和调试的方法。
(2)重点掌握结构化程序设计的3种基本结构。
实验要求:
练习使用命令方式和菜单方式建立、保存和运行下述程序。若运行出现错误请调试。
(1)编写程序S2-4-1.PRG,为“员工”表添加新纪录。
(2)货物表的单价和库存量需要经常修改,试编写程序S2-4-2.PRG对货物表作数据维护。
(3)分别用顺序查询(编程S2-4-3A.PRG)和SELECT-SQL命令查询(编程S2-4-3b.prg)员工个人完成订单情况。
(4)编程s2-4-4.PRG显示货物库存清单,要求计算出每次货物的库存值和货物库存总值。
实验步骤:
(1)建立程序文件:执行命令 MODIFY COMMAND S2-4-1,在程序编辑窗口建立如下程序文件。
*程序文件名:S2-4-1.PRG
*功能:为“员工”表添加新纪录。
CLEAR
USE 员工 打开员工.dbf
APPEND BLANK 添加一个空白记录
@ 10,5 SAY”添加新纪录”
? 插入一个空行
INPUT”请输入工号:”TO gh
INPUT “请输入姓名:”TO xm
INPUT”请输入电话:”TO dh
REPLACE 工号WITH gh,姓名with xm, 电话with dh 将输入的数据写入表中
?
INPUT”是否输入照片(Y/N):”TO zp
IF UPPER(ZP)=”y”
MODIFY GENERAL 照片 输入照片
EDIF
INPUT”是否输入备注(y/n):”TO BZ
IF UPPER(BZ)=”Y”
MODIFY MEMORY 备注 输入备注
ENIF
DIPLAY
USE
上述程序录入后,按ctrl+w保存文件,从而关闭文本编辑窗口。然后执行命令“DO S2-4-1”运行程序。若存在录入错误请调试。
调试结果如下:
(2)s4-2-2.PRG编制如下:
*程序文件名:s4-2-2.PRG
*功能:根据给出的货号,修改货物表的单价和库存量。
CLEAR
USE 货物
@5,15 SAY修改货物的单价和库存量
?
INPUT 请输入货号TO hh
LOCATE FOR 货号=hh
IF FOUND()
DISPLAY
INPUT请输入单价:TO dj
INPUT请输入库存量:TO kcl
REPLACE 单价 WITH dj,;
库存量 WITH kcl
? 请检查修改后的数据:
DISPLAY
ELSE
@12,20 SAY无此货号!
ENDIF
USE
程序运行结果如图2.4.1所示。
在修改一项记录如下:
(3)S2-4-3a.PRG编制如下:
* 程序文件名:S2-4-3a.PRG
* 功能:查询员工完成订单情况。
CLEAR
USE 员工
SET ORDER TO gh
SELECT 0
USE 订单
SET RELATION TO 工号INTO 员工
SET SKIP TO 员工
@ 1,8 SAY”查询员工完成订单情况:”
?
INPUT”输入工号:”TO gh
LOCATE FOR 员工.工号=gh
IF FOUND()
LIST员工.工号,员工.姓名,订单.订单号,订单.订购日期,;
订单.客户编号 FOR 员工.工号= gh OFF
ELSE
?’无订单!’
EDIF
USE
程序如下:
程序运行查询结果如下:
(4)S2-4-3b.PRG编制如下:
* 程序文件名:S2-4-3b.PRG
*功能:查询员工完成订单情况。
CLEAR
@ 1,8 SAY”查询员工完成订单情况(按组合键ctrl+q 退出)”
?
INPUT “输入工号:”TO gh
SELECT员工.工号,员工.姓名,订单.订单号,订单.订购日期,订单.客户号 ;
FROM订货!员工INNER JION 订货!订单;
ON 员工.工号=订单.工号;
WHERE 员工.工号=gh
程序运行结果见图2.4.3。
[说明]由于使用SELECT-SQL命令查询,因此不需要预先打开员工表和订单表。
程序执行的结果如下:
1)工号为0002的员工的订单查询如下:
2)工号为0004的员工的订单查询如下:
(5)S2-4-4.PRG编制如下:
* 程序文件名:S2-4-4.PRG
*功能:用扫描循环语句编写程序,显示货物库存清单。
LCEAR
库存总值=0
USE货号
?”货号”,”
显示全部