VFP 6.0数据库基本操作

更新时间:2024-05-01 14:59:01 阅读量: 综合文库 文档下载

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

实验七、VFP 6.0数据库基本操作 一、 实验目的及要求

a) 掌握VFP 6.0数据库系统的启动与退出

b) 掌握VFP 6.0数据库系统菜单的基本操作与使用

c) 掌握操作VFP 6.0命令窗口方法,以及基本命令使用。 d) 掌握常量和变量的命名与使用

e) 掌握表达式的分类与各表达式的运用。 二、实验内容及步骤

a) 在Windows“开始”菜单中的程序组中选择“VFP 6.0 for windows”菜单即可。要退出VFP 6.0系统,可在命令窗口中输入QUIT命令,也可在文件菜单中选择退出选项。 b) VFP 6.0数据库系统菜单的操作类似于Windows菜单的操作。

c) 数据库中,常量分为字符型常量、数值型常量、逻辑型常量、日期型常量,注意它们的格式,变量有字段变量和内存变量

i. 给内存变量赋值的简单命令:

格式1:store <表达式> to <内存变量表> 格式2:<内存变量>=<表达式> 练习: ? store 32 to x ,y ,z

?? store .t. to yn,dd ?? a=3*3+5/2

? store “小芳” to xm 理解其含义。

例1:建立4个变量,分别打印各种计算结果。 任 务 数据库的命令 计算结果 ①建立aa1=12.5 Aa1=12.5 ②建立aa2=15 aa2=15

③建立aa3=\aa3=\ ④建立aa4=.t.aa4=.t .

⑤输出aa1是否大于aa2的结果 ? aa1>aa2 .F.

⑥输出是否aa1小于aa2和aa4的结果 ? aa1

⑧输出aa1是否小于aa2的结果 ? aa1

.T.

ii. VFP 6.0数据库的表达式是把常量、变量、函数等用圆括号和运算操作符连接起来有意义的式子。其分为:算术表达式,关系表达式,字符表达式,逻辑表达式。 练习:

gl=20

store 65 to gz

store “讲师” to zc ? gl>=20 .or. zc<>“讲师” ? gl>=20 .and. zc<>“讲师”

? gl>=25 .or. .not.gz<=100 .and. zc=“讲师” ? gl>=25 .or.gz<=100 .and..not. zc=“讲师” ? (gl>25 .or. gz<=100).and..not.zc=“讲师”

三、 注意事项

a) 给变量命名时,我们一定要遵循命名规则:变量可以是字母、汉字、数字、以及下划线组成,

但必须以字母、汉字开头,变量名长度不得超过10个字符。比如:性别,YY,dd_dd等均为合法的变量名;而 ,姓名是非法的变量名。

b) 当不同类型的运算符在同一表达式中出现时,算术、字符串运算符优先于比较运算符;比较运算符优先于逻辑运算符;括号最优先。 四、 思考题

a) 说明下列数据哪些是变量?哪些是常量?是什么类型常量? “性别” “Y” 34.33 xm “03/12/98” N .N. b) 写出下列符合要求的逻辑表达式 i. 工资高于500且低于是100 ii. 工资高于500的男性

iii. 职称是“讲师”或“教授”,工龄大于20年的非汉族女性。

一、 实验目的及要求

a) 掌握数据库库结构的建立,数据的输入、显示等基本操作 b) 掌握数据库结构的修改、数据库记录的修改

c) 掌握数据库的排序与索引文件的建立与使用,数据的分类求知汇总等操作 d) 掌握数据库中的数据的检索方法和数据库中数据的统计方法 二、 实验内容及步骤

a) 数据库结构新建,库文件结构,记录的立即输入,记录的查看,记录的追加,记录的插入,数据库的关闭,记录的显示,记录指针的移动及相关函数的使用。 练习:1、建立数据库文件结构:在命令窗口中键入命令 CREATE GZ 屏幕出现库结构对话框,按下列要求依次输入各字段的字段名、字段类型、字段宽度和小数位数 字段名 类型 宽度 小数位 xm c 8 ks c 6 jbgz n 6 2 bt n 6 2 jj n 6 2 kk n 5 2

存盘:当最后一个字段的内容输入完毕,按CTRL+W键存盘或用TAB键或光标键将鼠标指针移至“确定”按钮按回车,可立即进行记录的输入 xm 李文明 ks 学生科 jbgz 362.00 bt 180.00 jj 92.00 kk 10.00 xm 皮学庆 ks 学生科 jbgz 352.00 bt 180.00 jj 80.00 kk 25.00 xm 盛辉 ks 教务科 jbgz 352.00

bt 180.00 jj 80.00 kk 12.00 xm 李小刚 ks 教务科 jbgz 352.00 bt 180.00 jj 80.00 kk 20.00 xm 王广明 ks 总务科

jbgz 456.00 bt 210.00 jj 60.00 kk 27.00

记录输入完,可以用光标键前后浏览已录入的数据,看是否正确,发现问题进行修改,无误后按CTRL+W存盘,返回命令窗口。 库结构的查看: LIST STRUCTURE DISPLAY STRU ? FCOUNT() ? FIELDS(1) ? FIEL(4)

记录的查看与修改

LIST BROW

记录的追加

用APPEND命令向库中追加如下三条记录: xm 张朝 ks 教务科 jbgz 392.00 bt 190.00 jj 80.00 kk 10.00 xm 陈小美 ks 学生科 jbgz 392.00 bt 190.00 jj 92.00 kk 10.00 xm 刘江富 ks 教务科 jbgz 462.00 bt 310.00 jj 92.00 kk 10.00

插入记录:在“王广明”之后插入以下记录: xm 赵新月 ks 总务科

jbgz 392.00 bt 190.00 jj 80.00 kk 25.00

在命令窗口中输入: DISP ALL GO 5 INSERT

数据库的关闭:1、在同一工作区打开另一数据库的同时,即关闭了当前数据库。2、use 3、close database 4、退出VFP 6.0时,系统自动关闭所有数据库。

b) 库结构的修改:追加、插入、删除一个字段;记录的浏览;记录的删除 练习:库结构的修改:在命令窗口中键入以下命令 USE GZ LIST STRU MODI STRU 追加一个字段:

字段名 类型 宽度 小数位 SFS N 6 2 插入字段在“KK”字段后插入两个新的字段

字段名 类型 宽度 小数位 CX N 3 0 YFS N 6 2 字段数据的替换:在命令窗口中输入命令: LIST GO 3

REPLACE YFS WITH JBGZ+BT+JJ LIST

REPL ALL YFS WITH JBGZ+BZ+JJ REPL ALL SFS WITH YFS-KK LIST USE

记录的删除: USE GZ GO 2 DELE LIST

DELE ALL FOR JBGZ<390 LSIT ALL

DELE ALL FOR KS=”学生科” LIST FOR DELE()

RECALL ALL FOR JBGZ<390 LIST FOR DELE()

GO 14 RECALL

DELE FOR XM=”刘小小”

LIST PACK ZAP

CLOS DATA

c) 对库文件进行升序、降序,建立排序文件,对库文件建立索引文件

1、 排序

① 对 RSDAK.DBF 数据库按 “GZ”字段升序排列,建立排序文件GZ_01.DBF 并显示其内容: DIR &&观察当前目录下的所有库文件 USE RSDAK

SORT TO GZ_01 ON GZ &&按工资升序排列 BROW &&看当前库是否排序

DIR &&观察是否产生 GZ_01.DBF 库文件 USE GZ_01

BROW &&看是否按要求排好序

USE

② 对RSDAK.DBF 按 “GZ”字段降序建立排序文件 GZ_02.DBF : USE RSDAK

SORT TO GZ_02 ON GZ /D && 按工资降序排列

DIR

USE GZ_02 BROW USE

2、 索引

对RSDAK.DBF 数据库按 “GZ”字段升序排序,建立索引文件 GZ_03.IDX ,并与排序文件GZ_03.DBF 比较效果: USE RSDAK BROW

INDE TO GZ_03 ON GZ

&& 按 GZ 字段建立名为 GZ_01.IDX 的升序索引文件 BROW && 注意观察效果与上有何不同

DIR *.* && 显示所有文件,观察是否有 GZ_01.IDX 文件 CLOS DATA && 关闭数据库文件

① 对RSDAK.DBF按“GZ”字段降序排列,建立索引文件 GZ_04.IDX : USE RSDAK BROW

INDE TO GZ_04 ON ―GZ

&建立索引时可以在数值字段前加“—”号按降序排列 BROW

DIR *.* CLOS DATA

索引文件的打开

① 建立索引文件时自动起作用

② 打开库文件后,再打开索引文件

USE RSDAK BROW

SET INDE TO GZ_03 && 打开索引文件 BROW && 观察与刚才的区别

USE

③ 打开库文件的同时打开索引文件

USE RSDAK INDE GZ_03 &&打开库的同时打开索引文件 ? RECN ( ) &&当前记录号是否为1:_______ GO BOTT ? RECN ( )

&&当前记录号为:_______,记录号是否为最大?_______ GO TOP

? RECN ( ) &&当前记录号为:_______ LIST

? RECN ( ) && 当前记录号为:_______

索引文件的关闭

SET INDE TO &&只关闭打开的索引文件 或 USE && 关闭库文件的同时关闭索引文件

多重排序

① 对RSDAK.DBF 数据库先按XB 字段升序,性别相同的再按 CSRQ 字段升序排列,建立多重排序文件 RSDAK_XBCSRQ.DBF :

USE RSDAK

SORT TO RSDAK_XBCSRQ ON XB,CSRQ

LIST && 是否有排序效果_________ USE RSDAK_XBCSRQ

DISP ALL &&注意观察排序效果

USE

② 对 RSDAK.DBF 数据库先按 GZ 字段降序,工资相同的再按 XM 字段升序排列,建立多重排序文件 RSDAK_GZXM.DBF : USE RSDAK

SORT ON GZ /D , XM TO RSDAK_GZXM

LIST && 是否有排序效果_________ USE RSDAK_GZXM

BROW && 注意观察排序效果 USE

多重索引

① 对 RSDAK.DBF 数据库按 “XB”和“BH”字段建立多重索引文件 XBBH.IDX USE RSDAK

INDE TO XBCSRQ ON XB + BH

&&先按性别排序,性别相同的再按编号排序 BROW && 观察索引效果

USE

② 对 RSDAK.DBF 数据库按 “XB”和 “GZ”字段建立多重索引文件 XBGZ.IDX

USE RSDAK

INDE ON XB + STR(GZ) TO XBGZ &&当字段类型不一致时应将非字符型转换为字符型 DISP ALL &&观察索引结果

USE

主索引文件的改变

打开 RSDAK 数据库的同时打开多个索引文件,观察主索引文件所起的作用。 USE RSDAK INDE GZ_03 , GZ_04 , XBBH , XBGZ

BROW &&观察当前起作用的索引文件是__________ SET ORDER TO GZ_04

&&改变主索引,注意主屏幕显示的信息

BROW &&观察当前起作用的索引文件是_______ SET ORDER TO 4

&&再改变主索引,注意主屏幕显示的信息 BROW &&观察当前起作用的索引文件是_________ USE

d) 检索

1、 用条件显示命令进行检索

在命令窗口输入以下命令,注意观察分析结果:

USE RSDAK

LIST FOR XM=’李长贵’ &&列出XM为“李长贵”的记录 LIST FOR XM=’李’ &&列出姓“李”的记录

LIST FOR XM=’李长’ &&列出:_______________的记录 LIST FOR XM=’长贵’ &&结果:_______________

LIST FOR “长”$XM &&列出XM中有“长”字的记录

LIST FOR SUBS(XM, 3 ,2)=”长” &&列出XM中第二个字为“长”的记录。 思考:能否将以上命令中的LIST 改为DISP ?_____________。

2、 用LOCATE 命令进行顺序检索

① 在 RSDAK.DBF 数据库中找出工资超过300 元的第一条记录 USE RSDAK LOCATE FOR GZ>300 DISP

② 继续查找工资超过 300 元的所有记录

CONTINUE DISP

反复执行上述两条命令,直到屏幕显示“END OF LOCATE SCOPE ”时表示检索范围结束。

③ 在RSDAK.DBF 库中找出所有1970 年及以后出生的人员,并观察 FOUND( ) 函数的返回值: USE RSDAK LOCATE FOR YEAR(CSRQ) >= 1970

? FOUND() && 查询记录是否找到 ? EOF() DISP CONT DISP

连续输入CONT 命令,直到检索范围结束。再输入: ? FOUND()

? EOF() && 找不到时记录指针指向______________

USE

3、 索引检索

① 先对 RSDAK.DBF 数据库按 GZ 建立索引,再查找工资等于255.20 元的记录: USE RSDAK

INDE TO RSDAK_GZ ON GZ

FIND 255.20 && 在RSDAK.DBF 中找 工资为 255.20 的记录 DISP

SKIP && 找下一条满足条件的记录

DISP

连续输入SKIP 和 DISP 命令,直至显示的记录不符合条件,可结束查找 ? EOF() && 找不到时记录指针指向__________

② 先对 RSDAK.DBF 数据库按XM 建立索引,再查找姓名为“李长贵”的记录和第一个姓“李”的记录:

USE RSDAK

INDE TO RSDAK_XM ON XM

FIND 李长贵 && 找叫“李长贵”的记录 DISP

FIND 李 && 找姓 “李”的记录 DISP USE

③ 在 RSDAK.DBF 数据库中查找职称为讲师的第一条记录: USE RSDAK

INDE TO RSDAK_ZW ON ZW SEEK “讲师”

DISP

④ 打开RSDAK.DBF 库及 RSDAK_XM.IDX 索引文件,观察用 SEEK 命令查询内存变量的情况:

USE RSDAK INDEX RSDAK_XM QQ=”李长贵” SEEK QQ DISP

WW=”李”

SEEK WW DISP

连续键入SKIP ,DISP 命令,直到显示的记录不符合条件,可结束查找。

若键入:

MZ=”长贵” SEEK MZ

则屏幕显示: no FIND.

思考:为什么找不到:__________________________________

e) 统计与汇总

数据统计(请注意观察主屏幕上的输出信息) ① 记录数统计

USE RSDAK

COUNT &&统计总记录数

COUNT FOR GZ>300 &&统计基本工资在300元以上的人数 COUNT FOR ZW=”讲师” .AND. GZ > 300 TO A1

&&统计职称为讲师且工资超过300元的人数,并将结果保存在 A1中 ? A1

② 数据求和

SUM && 对所有数值型字段纵向求和

SUM BT + JJ && 求 BT + JJ 的总和 SUM GZ,BT,JJ TO B1,B2,B3 FOR ZW=”助教”

&& 统计职务为助教的所有人员的GZ,BT,JJ总和 ? B1,B2

③ 求平均值

USE RSDAK

AVER &&对所有数值型字段求平均值 AVER GZ,BT TO C1,C2 FOR XB=”男”

&& 求性别为男所有人员的平均工资和补贴数

? C1,C2 USE

分类求和

① 对 RSDAK.DBF 数据库中所有数值型字段按性别字段分类求和(汇总),生成名为 XB1.DBF的新数据库文件。

USE RSDAK

LIST STRU &&记下数字型字段的宽度:

INDE TO GZ_XB ON XB

&&分类汇总前应对数据库按关键字进行排序或索引 TOTAL ON XB TO XB1 &&按XB 进行分类汇总 USE XB1

LIST &&观察分类求和的结果

LIST STRU &&观察汇总后的库结构并注意其中的数值字段宽度是否自动增加了______ USE

② 对RSDAK.DBF 的 BT 及 JJ 两字段按性别分类求和,生成名为XB2.DBF的新数据库。 USE RSDAK INDE GZ_XB

TOTAL ON XB TO XB2 FIELD BT,JJ USE XB2 LIST USE

三、 意事项

a) 区分排序与索引。

b) 区分比较FIND与SEEK,LOCATE。 四、 思考题

a) 只打开文件时,记录指针指向几号记录? b) 排序和索引有何区别?

c) 只打开库文件时,记录指针指向第________号记录;

d) 打开库文件的同时打开索引文件,记录指针是否指向1号记录?最后一条记录是否为记录号最大胡记录?

e) 排序和索引有何区别? f) 用LOCATE 命令进行检索,要索引吗?

g) 如果不索引,FIND 与 SEEK 命令能否正常使用?,如果对一字段建立了索引,而用 FIND 或 SEEK 检查另一字段,能否成功?

实验九、库文件操作与常用函数 一、 实验目的及要求

a) 掌握数据库库结构的复制 b) 掌握库文件操作的常用命令

c) 熟悉VFP 6.0的常用函数的功能及初步了解数据库的关联 二、 实验内容及步骤 a) 数据库的复制 ① 整库复制

DIR &&看当前目录下的库文件情况

USE GZ01

COPY TO GZLS &&将GZ01库中所有内容复制到库GZLS.DBF中 DIR &&看是否增加了GZLS.DBF 库文件 USE GZLS LIST

DELE FILE GZLS.DBF &&欲删除GZLS.DBF,能删除吗?为什么? USE &&关闭GZLS.DBF

DIR &&看GZLS.DBF是否还在

ERASE GZLS.DBF &&删除GZLS.DBF DIR &&看GZLS.DBF是否删除

② 部分复制 复制部分字段

USE GZ01

COPY TO GZLS1 FIEl XM,KS,JBGZ

&&将GZ01中的XM,KS,JBGZ三个字段及其内容复制到GZLS1库中 USE GZLS1 LIST USE

按记录范围复制部分记录 USE GZ01 GO 5

COPY TO GZLS2 NEXT 4

&&将GZ01中的5—9号记录复制到GZLS2库中

COPY TO GZLS3 &&将GZ01库复制到GZLS3库中 USE GZLS2 &&观察复制情况 LIST

USE GZLS3 &&观察复制情况 LIST USE

按条件复制

USE ZGDA01

COPY TO DA1 FOR XB=’女’ &&将ZGDA01中的所有女性记录复制到DA1库中 COPY TO DA2 FOR XB=’男’ .AND. KS=’学生科’ &&将ZGDA01中学生科的所有男性记录复制到DA2库中

COPY TO DA3 FIEL KS,XM,JBGZ FOR KS=’实验科’ &&将ZGDA01中实验科人员的KS,XM,JBGZ字段内容复制到DA3库中 USE DA1 && 观察复制情况

LIST

USE DA2 LIST USE DA3 LIST USE

1、 复制库结构 ① 全部复制 USE GZ01

COPY STRU TO GZLS &&将GZ01库结构复制到库GZLS中 USE GZLS LIST

LIST STRU &&观察有无数据:________ USE

RUN DEL GZLS.DBF ② 部分复制

USE GZ01

COPY STRU TO GZLS FIEL XM,JBGZ,SFS

&&将GZ01中的XM,JBGZ,SFS三个字段复制到GZLS库中 USE GZLS LIST STRU USE

! DEL GZLS.DBF 3.从其他库中追加数据

USE GZ01

COPY STRU TO GZ1 &&将GZ01库结构复制到GZ11中 COPY STRU TO GZ2 USE GZ1 LIST

USE GZ2 LIST

APPEN FROM GZ01 FOR KS= ’学生科’ &&将GZ01中满足条件的数据追加到GZ2中 LIST USE

DELE FILE GZ1.DBF DELE FILE GZ2.DBF

4.常用函数练习(仔细观察、记录运行结果) ① 数值型函数的练习

CLEAR &&清屏

? EXP(2) &&指数函数 ? INT(87.26) &&取整函数 ? INT(-87.56)

? ABS(-523) &&取绝对值函数 ? SQRT(16) &&平方根函数

? ROUND(3245.346,2) &&四舍五入函数 ? ROUND(3245.644,2) ? ROUND(3245.644,-2)

? MAX(432,198,234) &&取最大值函数

? MAX(?ABC?,?21?,?WS?) ? MAX(“ABC”,”21”,”WS”) ? MAX([ABC],[21],[WS])

? MOD(52,5) &&取余函数 ② 字符型函数的练习

?LEN(‘计算机等级考试’) &&字符串长度函数

?UPPE(“It is a computer”) &&转换为大写字母函数 ? SUBS(’99计算机等级考试上机辅导教材’,9,8) && 取子串函数 ?AT(‘中心’,“计算机中心”) && 子串位置函数 ?AT(“aa”,“aabbcc”) AA=’五笔字型’ BB=’输入法’ ?AA+BB

? AA+SPACE(2)+BB

③ 日期和时间函数的练习 ?DATE( ) &&系统当前日期 ? TIME( ) &&系统当前时间 ④ 转换函数的练习

?STR(12345.678 ,8 ,1) && 数值转字符 ? STR(12345.678 ,8 ,2) ? STR(435.76 , 4) ? STR(123.56)

? VAL(‘1234.5’) && 字符转数值 ? VAL(?abcd?) ? VAL(12ABCD?)

? CTOD(‘04/18/99’) && 字符转日期

? CTOD(?04/18/99?)+20 ? CTOD(?04/18/99?)-5

? DTOC(date()) && 日期转字符 ⑤宏替换函数“ & ” 的练习 A=12345 B=?A? ? &B ? B

STORE 10 TO B B=?18-8? ? A+&B S=?DIR? ? S &S

⑥复合函数 ? SQRT(VAL(“100”)) ? CTOD(“12/12/98”)+12 M=“今天的日期是:”+DTOC(DATE())

? M

N=“现在的月份是:”+ SUBS(DTOC(DATE()),1,2)+ “月”

? N

1、 多工作区及其使用方法 ①工作区命名及选择 ②数据库的关联 ③ 数据库的更新 ④ 数据库的连接 三、 注意事项

a) 不能删除已打开的数据库文件。 四、 思考题

a) 没有关闭的数据库能否被删除?

b) COPY STRU 在拷贝时,能否将记录一并拷贝? c) 字符串的定界符除了双引号外还有什么?

d) ROUND( )函数中取的位数为负数时表示什么?(例:ROUND(1234.567,-2)

实验十、VFP 6.0程序设计 一、 实验目的及要求

a) 熟悉VFP 6.0建立程序(命令)文件(扩展名: PRG)的方法,掌握程序的三种基本结构。 b) 学习简单的算法。

c) 记录操作程序与数据检索程序设计初步 二、 实验内容及步骤 a) 顺序程序设计:

求一元二次方程的实数解。

在命令窗口中输入命令:MODI COMM PRG01便进入程序文件编辑窗口,输入如下内容: ***PRG01******

SET TALK OFF &&关闭控制命令响应 信息的显示 CLEA

INPUT “A=” TO A &&给方程的二次项系数赋值 INPUT “B=” TO B &&给方程的一次项系数赋值 INPUT “C=” TO C &&给方程的常数项系数赋值 D=B*B—4*A*C E=SQRT(D)

X1=(— B + E)/(2*A) X2=(— B — E)/(2*A)

? “X1=”,X1 ? “X2=”,X2

SET TALK ON &&打开控制命令响应信息的显示

输入完毕检查无误后,按CTRL+W存盘,返回到命令窗口,输入: DO ROG01 运行该程序,计算机提示输入数据时,对A、B、C分别输入2、4、-6,计算机输出结果,用笔验算一下,看结果是否正确。

1、 思考:该程序存在什么问题?

再运行一次该程序,这次分别输入4、2、1,程序运行中止,出现错误信息。:

按回车键后进入PRG01.PRG的编辑窗,可对其进行修改,暂不修改,按ESC键退出,这说明程序不完善,问题出没有对判别式进行判断(负数不能开平方)。

b) 分支程序的设计:

判断并求一元二次方程的实数解

COPY FILE PRG01.PRG TO PRG02.PRG &&PRG01.PRG复制成PRG02.PRG MODI COMM PRG02 按下面内容编辑:

* ****PRG02.PRG******* SET TALK OFF CLEA

INPUT “A=” TO A INPUT “B=” TO B INPUT “C=” TO C D=B*B—4*A*C IF D<0

? “没有实根”

ELSE

D=SQRT(D)

X1=(—B + E)/(2*A) X2=(—B —E)/(2*A)

? “X1=”,X1 ? “X2=”,X2 ENDIF

SET TALK ON

运行该程序两次,分别在命令窗口中输入的两次命令: DO PRG02

第一次分别输入4、2、1 第二次分别输入2、4、—6 观察分析程序的运行结果。

c) 循环程序的设计

以上程序在每次运行中只能解一个方程,下面用DO WHILE / ENDDO循环来解多个方程。首先将PRG02.PRG复制成PRG03.PRG,然后按以下内容编辑修改PRG03.PRG: * ******PRG03.PRG************** SET TALK OFF DO WHILE .T. CLEA

INPUT “A=” TO A INPUT “B=” TO B INPUT “C=” TO C D=B*B—4*A*C IF D<0

? “没有实根”

ELSE

D=SQRT(D)

X1=(—B + D)/(2*A) X2=(—B —D)/(2*A)

? “X1=”,X1 ? “X2=”,X2 ENDIF ANS=”y”

@10,10 SAY“还继续求解吗?(Y/N):”GET ANS PICT “y” READ

IF UPPE(ANS)=”N” EXIT ENDIF ENDDO

SET TALK ON

运行该程序求三次解,在命令窗口中输入命令:DO PRG03 第一次分别输入4、2、1,得出结果后回答“Y”,

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

Top