VF课后答案

更新时间:2024-05-27 02:21:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第0章

2.什么是数据模型,它包含那些方面的内容?数据库问世以来,出现过那些主要的数据模型?

答:数据模型首先是指把数据组织起来所采用的数据结构,同时也包含数据操作和完整性约束等要素。

主要出现的数据模型:面向对象数据库,分布式数据库,演泽数据库。 4.什么是数据库管理系统,它通常有那些基本功能?

答:数据库管理系统简记为是对数据库进行管理的软件,它是数据库系统的核心。数据库管理系统位于用户与操作系统之间,为用户或应用程序提供访问数据库的方法,包括数据库的建立、更新、查询、统计、显示、打印以及各种数据控制。 它的基本功能包括:1)数据库定义功能。 2)数据库操纵功能。 3)数据库事务管理功能。 4)数据库维护功能。 5)其他功能。 6.比较C/S模式和B/S模式的异同。

答:C/S模式是W/S模式的改进,C/S结构改进了系统前、后台的分工。客户机只运行前端应用程序,对访问结果进行显示逻辑(例如用户界面)等简单处理;而服务器则完成对后台数据库的访问,并处理各种事务逻辑(包括数据的并发控制等)。且每次任务均由客户机和服务器分担,充分利用网络资源。从客户机到服务器只需传送访问请求,从服务器返回客户机的仅仅是访问结果,网络传输量大大减少。

B/S模式是C/S模式的延伸。B/S结构与C/S结构相比,是将Web服务器兼做应用服务器,把原来要在客户机端运行的“显示逻辑”软件改在应用服务器上运行。 且两种应用模式的工作流程不同。 8. 简述ODBS接口的工作过程。

答:ODBS接口包括两个步骤:(1)应用程序调用ODBC API函数。(2)ODBC驱动程序管理器根据应用程序需要的数据库来调用相应的DBMS驱动程序。在ODBC的任务完成后,应用程序即可通过指定的DBMS来实现连接/断开数据库,从而执行SQL查询、读取查询结果等数据库操作。 第1章

2.VFP的程序窗由哪些部分组成?

答:标题栏、控制按钮、菜单栏、工具栏、窗口工作区、窗口围框、窗口角。 4.对话框可能包含哪些组成部分?简释各组成部分的作用。 答:对话框由若干按钮和矩形框构成。

每个按钮代表一种操作命令,故有时也称命令钮。

矩形框分为3类,即文本框、选择框、列表框。文本框是供用户输入一串字符,作为对系统提问的回答。选择框是供用户在若干可选择其中的一项或者几项。列表框是用于显示一组相关的数据,例如一个数据库表中的所有字段名。当相关数据较多,在一个框中容纳不下时,系统会自动在列表框的下方或右侧增加滚动条,对数据实现滚动显示。

6.VFP有哪俩种工作方式?简单说明各种方式的特点。 答:VFP的俩种工作方式:交互操作方式和程序执行方式。

交互操作方式是指命令执行方式。用户只需记住命令的格式与功能,在系统的圆点提示符(·)出现时从键盘上发一条所需的命令,即可在屏幕上显示执行的结果。但用户操作与机器执行互相交叉,会降低执行速度。

程序执行方式是用VFP的命令编成特定的序列,并将它们存入程序文件(或称命令文件)。用户需要时,只需通过特定的命令(例如DO命令)调用程序文件,VFP就能自动执行这一程序文件,把用户的介入减至最小限度。这不仅运行效率高,而且可重复执行。 8.试述项目管理器的主要作用。

答:项目管理器的主要作用是对被开发系统的数据、文档、源代码和类库等资源进行集中、高效管理,借以满足DBAS在开发中经常变化的用户需求。其高效管理不仅可加快开发的进度,而且可延长DBAS的生命周期。所以有人把项目管理器称为VFP的“控制中心”。 第2章

1. 建立如下所示的商品表SP.DBF。 操作要求:

1)建立SP.DBF的结构后,立即输入前6个记录的数据,其中头两个记录的商标字段由读者在Windows环境下选两个图标分别输入。数据输入后存盘退出。 答:(输入图标) SP.DBF建好后,用命令USE SP.DBF打开表,用MODIFY GENERAL 商

标 打开“SB.商标”窗口,在“编辑”中选“插入对象”,在“插入对象”对话框中选“由文件创建”,通过“浏览”按钮选定图标,单击“确定”。

2)打开SP.DBF,分别查看其结构与记录,包括备注字段与商标字段的数据。 答:USE SP.DBF;LIST;

答:USE SP.DBF;LIST; 3)追加最后两个记录,结束后分别以浏览格式和编辑格式查看数据。

VALUES(”SY-701”,”电饭锅”,F,258.00,10,{08/19/96},”上海电器厂”,”本产品属改进型”) 标);

公司”) INSERT INTO SP(货号,品名,进口,单价,数量,开单日期,生产日期,备注,商 VALUES(”NV-920”,”录放机”, T,1750.00,6,{07/20/96},”先锋电器 2. 分别用链接、嵌入方法为SB.DBF的轿车增加“商标”,图形文件自选。 5.打开SP.DBF,试为下列要求分别写出命令序列。

Use sp;list;list record 5 field 货号,品名,进口,单价,开单日期,生产单位,备注, 商标。

2)显示第3个记录开始的5个记录。

3)显示第3个记录到第5个记录。 USE SP;LIST;GO 3;DISPLAY NEXT 5。 USE SP;LIST;GO 3;DISPLAY NEXT 3。

4)显示数量少于5的商品的货号、品名与生产单位。 USE SP;LIST;LIST 货号,品名,生产单位 FOR 数量〈5。 5)显示进口商品或1995年开单的商品信息。

use sp;list;DISPLAY FOR 进口 OR YEAR(开单日期)=1995。 ww 6)显示上海商品信息。 DISPLAY FOR 生产单位=\上海\。

7)显示单价大于4000元的进口商品信息或单价大于5000元的国产商品信息。 DISPLAY FOR 进口 AND 单价>4000 OR !进口 AND 单价>5000。

8)列出1995年开单的商品的货号、品名、单价和开单日期,其中单价按9折显示。 LIST 货号,品名,单价*0.9,开单日期 FOR YEAR(开单日期)=1995 OFF

9)列出单价小于2000元以及单价大于5000元的进口商品信息。 DISPLAY FOR 进口 AND 单价<2000 OR 进口 AND 单价>5000。 10)显示从第3个记录开始的所有国产商品信息。 GO 3;DISPLAY REST FOR !进口。

显示第5个记录。答:(答案同第一题(1)一样)。INSERT INTO SP(货号,品名,进口,单价,数量,开单日期,生产日期,备注,商标); 11)列出货号的后3位为“120”的全部商品信息。 display for right(货号,3)=\。

12)列出货号第1个字母为“L”或者第2个字母为“V”的全部商品信息。 DISPLAY FOR LEFT (货号,1)=\货号,2,1)=\。

13)列出公司生产的单价大于3000元的所有商品信息。 LIST FOR \公司\生产单位 AND 单价>3000。

6.对表SP.DBF按如下要求进行复制,写出命令序列。

1)复制SP.DBF的结构,并将复制后的表结构显示出来。 COPY STRUCTURE TO SP0;USE SP0;LIST STRUCTURE;USE SP。

2)复制一个仅有货号、品名、单价、数量、备注等5个字段的表SP1.DBF。 3)将SP.DBF复制为表SP3。 COPY TO SP3.

4)复制具有货号、品名、数量、生产单位等4个字段的表SP4。 COPY STRUCTURE TO SP4 FIELDS 货号,品名,数量,生产单位.. GO 2;COPY TO SP5 NEXT 5 FOR 进口AND 单价>=3000. COPY TO SP6 FOR YEAR(开单日期)>=1996.

表SP6中去。 COPY STRUCTURE TO SP1 FIELDS 货号,品名,单价,数量,备注. 5)将第2到第6个记录中单价不小于3000元的进口商品复制为表SP5。 6)将1996年1月1日及以后开单的商品复制为表SP6。

7)将表SP.DBF按系统数据格式复制为文本文件SP.TXT,再将SP.TXT中的数据添加到表SP6中去。

COPY TO SP SDF ; USE SP6; APPEND FORM SP.TXT SDF; USE.

7.从SP.DBF复制出SP1.DBF,对SP1.DBF按以下要求写出命令序列: 1)列出SP1.DBF的结构与记录数据。

Use sp;copy to sp1;use sp1;display structure;list off.

2)将表SP1.DBF中的数量字段值用2倍的数量进行替换。 Use sp1;replace all数量 WITH 数量*2.

3)在第3个记录之后插入一个空记录,并自行确定一些数据填入该空记录中。 USE SP1;GO 3;INSERT BLANK;BROWSE;(“YI-786”,”电脑”,.T.,8300.00,3,{09/23/96},”香港公司”)

4)在第3个记录与在第7个记录上分别加上删除标记。 USE SP1; DELETE FOR RECORD 3 AND RECORD 7.

5)撤消第3个记录上的删除标记并将第7个记录从表中抹去。 USE SP1;RECALL RECORD 3;PACK.

6)将SP.DBF的全部记录追加到SP1.DBF中去,并查看经追加的记录。 USE SP1;APPEND FROM SP.

7)用SCATTER与GATHER命令对SP1.DBF的第3个记录作如下修改:将单价由3100.00元改为3500.00元,在备注字段中填入内容“新产品提价”。

USE SP1;GO 3;SCATTER MEMVAR MEMO;M.单价=3500.00,M.备注=”新产品提价”;第三章

1.试对SB.DBF分别排序:

(1)将价格超过10000元的投资按部门升序排序,并要求新文件只包含编号、名称、价格、部门等四个字段。

USE SB;LIST;SORT TO SB1 ON 部门 FOR 价格>10000 FIELDS 编号,名称,价格,部门;USE SB1;LIST。

(2)将主要设备按名称降序排序,当名称相同时则按启用日期降序排序。 USE SB;LIST;SORT TO SB2 ON 名称/D ,启用日期/D FOR 主要设备;USE SB2;LIST。 3.使用命令为SB.DBF建立一个结构复合索引文件,其中包括三个索引: a) 记录以编号降序排序,并且索引标识为普通索引型。 USE SB;LIST;INDEX ON 编号 TAG BH DESCENDING. LIST.

b) 记录以名称降序排序,名称相同时则按启用日期降序排序,并且索引标识为唯一索引型。

USE SB; LIST; INDEX ON 名称+DTOS(启用日期) TAG MCRQ DESCENDING UNIQUE. LIST.

5. 输入一个字符串,要求分别统计出其中英文字母、空格、数字和其他字符的个数。 STORE 0 TO ZM,KG,SZ,QT INPUT “请输入字符串:”TO ZFC FOR I=1 TO LEN(ZFC,I,1). ZF=ASC(ZF) DO CASE

CASE ZF>64 AND ZF<91 OR AF>96 AND ZF<123; ZM=ZM+1 CASE ZF=32 KG=KG+1

CASE ZF>47 AND ZF<58 SZ=SZ+1 OTHERWISE QT=QT+1 ENDCASE ENDFOR

?”英文字母个数:“,ZM

?”空格个数:“,kg www.khda课后答w.co案网m课后答案网 www.khdaw.com ?“数字个数:”,sz ?“其他字符个数:”,QT

6. 已知成绩.DBF含有学号、平时、考试、等级等字段,前三个字段已存有某班学生的数据,平时成绩、考试成绩均填入了百分制数。请以平时成绩20%、考试成绩80%的比例确定等级并填入等级字段。等级评定办法是:90分以上为优,75~89分为良,60~74分为及格,60分以下不及格。要求用条件、步长、扫描3种循环语句分别编出程序。 USE 成绩 SCAN

ZHCJ=平时*0.2+考试*0.8

DJ=IIF(ZHCJ>=90,”优”,IIF(ZHCJ<90 AND ZHCJ>=75,”良”,IIF(ZHCJ<75; AND ZHCJ>=60,”及格”,”不及格”)));

REPLACE 等级 EITH DJ ENDFOR LIST OFF USE

13. 请分别把求阶乘的功能设计为子程序、过程、自定义函数,并在计算5!-3!+7!时进行调用。 (1)主程序:

* 程序文件名:T4-13-1.prg .CLEAR JC=0

DO JSJC WITH 3,JC K3=JC

DO JSJC WITH 5,JC K5=JC

DO JSJC WITH 7,JC K7=JC S=K5-K3+K7

?”5!-3!+7!=”,S FUNCTION ‘B’ 子程序:

*文件名:JSJC.PRG PARAMETERS N,P P=1 FOR I=2 TO N P=P*I ENDFOR RETURN (2),

* 程序文件名:T4-13-2.prg CLEAR JC=0

DO JSJC WITH 3,JC www.khda课后答w.co案网m K3=JC

DO JSJC WITH 7,JC K7=JC S=K5-K3+K7

?”5!-3!+7!=”,S FUNCTION ‘B’ *

PROCEDURE JSJC PARAMETERS N,P P=1 FOR I=2 TO N P=P*I ENDFOR RETURN (3),

*程序文件名:T4-13-3.prg CLEAR JC=0

S=JSJC(5,JC)-JSJC(3,JC)+JSJC(7,JC) ?”5!-3!+7!=”,S FUNCTION ‘B’ *

FUNCTION JSJC PARAMETERS N,P P=1 FOR I=2 TO N P=P*I ENDFOR RETURN P

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

(1)* ex1.prg * pp.prg a=3 PARAMETER x,y b=5 y=x*y

Do pp WITH 2*a,b ?”s=”+STR(y,3) ? a,b RETURN RETURN

(2) * ex2.prg * sub prg PUBLIC a PRIVATE c a=1 a=a+1 c=5 PUBLIC b Do sub b=2 ?”ex2:”,a,b,c c=3 RETURN d=4 ?”sub:”,a,b,c,d RETURN (1)* EX1.PRG A=3 B=5

DO PP WITH 2*A,B ?A,B RETURN (2)* EX2.OPRG PUBLIC A A=1 C=5 DO SUB ?”EX2:”,A,B,C RETURN

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

(1) 记录输入、修改、插入与删除; (2) 能分别以姓名、邮政编码升序显示记录; (3) 能按姓名查询记录。 * 程序文件名:T4-15.prg SET TALKOFF SET SAFETY OFF CLEAR USE 通讯录 TEXT

****************通讯录管理系统***************** * 1,输入 2. 修改 * * 3. 插入 4 删除 * * 5 显示 6. 查询 * 0.退出

*********************************************** ENDTEXT DO WHILE .T. @ 8,0 CLEAR @8,34 SAY “”

INPUT SPACE(34)+”请输入0~6:”TO XZ DO CASE CASE XZ=1 DO SR CASE XZ=2 DO XG CASE XZ=3 DO CR CASE XZ=4 DO XS

CASE XZ=5 www.khda课后答w.co案网m DO XS CASE XZ=6 DO CX CASE XZ=0

WAIT”系统关闭!” WINDOW TIMEOUT 1 EXIT ENDCASE ENDDO USE CLEAR SET TALK ON ***************** PROCEDURE SR

?”记录输入结束后按CTRL+W键存盘。” APPEND

***************** PROCEDURE XG

?” 记录修改结束后按CTRL+W键存盘。” GO 1 BROWSE

***************** PROCEDURE CR

?”将浏览窗口中的光标移到新纪录要插入的位置,按ESC键继续”JLH=RECNO()

IF RECNO()

APPEND BLANK

BROWSE APPEND FORM QU DELDTE FILE QY.DBF GO JLH+1 ELSE

APPEND BLANK ENDIF APPEND BLANK ENDIF @8,0CLEAR

@24,0 SAY “输入要插入的数据,然后按CTRL+W键存盘退出。“ BROWSE ************* PROCEDURE SC

?”选定要删除的记录,再按标题栏中的提示,按F5或F6键操作。” PSH KEY CLEAR ON KEY CLEAR

ON KEY LABEL F5 DO SCHF ON KEY LABEL F6 DO PK BROWSE TITLE ‘通讯录’+’” PROCEDURE SCHF IF DELETED() RECALL ELSE DELETE ENDIF PROCEDURE PK PACK

************* PROCEDURE XS

?“按法 键按姓名拼音顺序显示,按F6键按邮政编码升序显示,按ESC 键结束

显示。” PUSH KEY CLEAR ON KEY LABEL F5 DO XMPY ON KEY LABLE F6 DO YZBM BROWSE TITLE ‘通讯录‘+’ NOAPPEND NOMODIFY PROCEDURE XMPY INDEX ON 姓名 TAG XM

BROWSE TITLE ‘通讯录’+’ 按姓名拼音顺序显示’; NOAPPEND NOMODIFY REOWSE TO MASTER PROCEDURE UZBM

INDEX ON 邮政编码 TAG YBM BROWSE TITLE ‘通讯录’+’ NOAPPEND NOMODIFY REOWSE TO MASTER ************************ PROCEDURE CX FLAG=’1’ @8,0 CLEAR @8,5SAY””

INPUT SPACE(5)+”请输入姓名:” TO YCXM READ

YCXM1=ALLTRIM(YCXM1”$姓名 IF FOUND()

?”按ESC继续??.”

BROWSE TITLE ‘通讯录’+’SPACE(5)+’&YCXM’+资料‘ 佛如“&YCXM1”$姓名; NOAPPEND NOMODIFY www.khda课后答w.co案网m ELSE

@10,5 SAY “查无此人!“ Endif@20,0 CLEAR @20,5 SAY “”

INTPUT SPACE(5)+”是否继续查询(一、你):” TO YN IF UPPER(YN)=”N” FLAG=’0’ ENDIF ENDDO

本文来源:https://www.bwwdw.com/article/g8p7.html

Top