700 likes | 923 Views
Visual FoxPro 6.0 程序设计. (阶段测验). 首都经济贸易大学 计算中心(西区)制作. Visual FoxPro 阶段测验. 第一阶段 数据库、查询与视图. 第二阶段测验 结构化程序设计. 第三阶段测验 综合测试. 退出. 第一阶段测试 学号: 姓名: 班级: 一、选择题 1 VFP 数据库管理系统的数据模型是 A )结构型 B )关系型 C )网状型 D )层次型 2 在一个 VFP 数据表文件中有 4 个备注型字段,该数据表的备注文件数目是
E N D
Visual FoxPro 6.0 程序设计 (阶段测验) 首都经济贸易大学 计算中心(西区)制作
Visual FoxPro阶段测验 第一阶段 数据库、查询与视图 第二阶段测验 结构化程序设计 第三阶段测验 综合测试 退出
第一阶段测试 学号: 姓名: 班级: 一、选择题 1 VFP数据库管理系统的数据模型是 A)结构型 B)关系型 C)网状型 D)层次型 2 在一个VFP数据表文件中有4个备注型字段,该数据表的备注文件数目是 A)1 B)4 C)7 D)10 3 假定N、C、L分别为数值型、字符型、逻辑型内存变量。在下面的表达式中错误的表达式是 A)3*N B)C-“A” C)N=10.OR.L D)C>10 4 关系数据库中的三种基本操作是 A)显示、查找、打印 B)扫描、选择、连接 C)选择、投影、连接 D)显示、排序、打印 5 设当前数据表有10条记录,当EOF()为真时,命令?RECNO()的显示结果是 A)10 B)11 C)0 D)空
6 执行STORE “1999年12月庆祝澳门回归祖国!”TO XY命令之后,要在屏幕上显示“澳门1999年12月回归祖国!”,应使用命令 A)?SUBSTR(XY,15,4)+SUBSTR(XY,1,10)+SUBSTR(XY,10) B)?SUBSTR(XY,15,4)+LEFT(XY,1,10)+RIGHT(XY,19) C)?SUBSTR(XY,15,4)+LEFT(XY,10)+RIGHT(XY,10) D)?SUBSTR(XY,15,4)+LEFT(XY,10)+RIGHT(XY,19,10) 7 设有变量pi=3.1415926,执行命令 ?ROUND(pi,3) 的显示结果是 A)3.141 B)3.142 C)3.140 D)3.000 8 当前数据表文件中有一个长度为10的字符型字段sname,执行如下命令: REPLACE sname WITH “于丹樱” ?LEN(sname) 最后一条命令的显示结果是 A)3 B)6 C)10 D)11
9 一个有多条记录的数据表打开后,要在第一条记录后增加一条空记录,应使用命令 A)APPEND B)INSERT C)APPEND BEFORE D)INSERT BEFORE 10 在下列表达式中,结果为字符型的是 A)“125”-“100” B)“ABC”+“XYZ”=“ABCXYZ” C)CTOD(“07/01/97”) D)DTOC(DATE())>“07/01/97” 11在Visual FoxPro中,将A盘根目录下的STD.PRG 文件复制到C盘的\DB目录中,应使用命令 A)COPY A:\STD.PRG C:\DB B)COPY FILE A:\STD.PRG TO C:\DB\STD.PRG C)COPY A:\STD.PRG TO C:\DB\STD.PRG D)COPY TO C:\DB\STD.PRG 12 设职工数据表和按“工作日期”索引的索引文件已经打开,要把记录指针定位到工作刚好满30天的职工,应当使用命令 A)FIND DATE()-30 B)SEEK DATE() 30 C)FIND DATE() 30 D)SEEK DATE()-30
13 设数据表文件已经在当前工作区打开,有关索引文件已经建立,要打开该数据表文件的某索引文件,应该使用命令 A)SET INDEX TO <索引文件名> B)OPEN INDEX <索引文件名> C)USE INDEX <索引文件名> D)必须与数据表文件一起打开 14 在VFP中,对数据表文件分别用COPY TO命令和COPY FILE命令进行复制时,以下叙述中错误的是 A)使用COPY TO命令时必须先打开数据表 B)使用COPY FILE 命令时数据表必须关闭 C)COPY FILE 命令可以同时复制备注文件 D)COPY TO命令可以同时复制备注文件 15 命令SELECT 0 的功能是 A)选择区号最小的空闲工作区 B)选择区号最大的空闲工作区 C)选择当前工作区的区号加1的工作区 D)随机选择一个工作区的区号
16 在下面VFP命令中,不能修改数据记录的命令是 A)BROWSE B)EDIT C)CHANGE D)MODIFY 17 在下面命令中,执行效果一定相同的是 ①AVERAGE 基本工资FOR 性别=“男” ②AVERAGE 基本工资WHILE 性别=“男” ③AVERAGE 基本工资FOR !性别=“女” ④AVERAGE 基本工资WHILE 性别<>“女” A)①和④、②和③ B)①和③、②和④ C)①和②、③和④ D)①、②、③和④ 18 在已打开的数据表文件中有“姓名”字段,此外又定义了一个内存变量“姓名”。要把内存变量姓名的值传送给当前记录的姓名字段,应使用命令 A)姓名=M->姓名 B)REPLACE 姓名WITH M->姓名 C)STORE M->姓名TO 姓名 D)GATHER FROM M->姓名FIELDS 姓名
19 已打开数据表,其中出生年月字段为日期型,年龄字段为数值型。要计算每条记录今年的年龄并把其值填入年龄字段中,应使用命令 A)REPLACE ALL 年龄WITH YEAR(DATE())-YEAR(出生年月) B)REPLACE ALL 年龄WITH DATE()-出生年月 C)REPLACE ALL 年龄WITH DTOC(DATE())-DTOC(出生年月) D)REPLACE ALL 年龄WITH VAL(SUBS(DTOC(DATE()),7,2) - SUBS(DTOC(出生年月),7,2)) 20 ABC.DBF是一个具有两个备注型字段的数据表文件,使用COPY TO PSQ命令进行复制操作,其结果将()。 A)得到一个新的数据表文件 B)得到一个新的数据表文件和一个新的备注文件 C)得到一个新的数据表文件和两个新的备注文件 D)显示出错误信息,表明不能复制具有备注型字段的数据表文件
21 假定出生年月字段为日期型,日期格式为dd/mm/yy.以下四组命令中各命令功能完全等效的是 A)LIST FOR SUBSTR(DTOC(出生年月),4,2)=“97” LIST FOR YEAR(出生年月)=1997 LIST FOB “97”$DTOC(出生年月) B)LIST FOR SUBSTR(DTOC(出生年月),7,2)=“97” LIST FOR YEAR(出生年月)=1997 LIST FOR “97”$DTOC(出生年月) C)LIST FOR SUBSTR(DTOC(出生年月),1,2)=“97” LIST FOR YEAR(出生年月)=“1997” LIST FOR “97”$DTOC(出生年月) D)LIST FOR SUBSTR(DTOC(出生年月),7,2)=“97” LIST FOR YEAR(出生年月)=1997 LIST FOE “97”$出生年月 22 字符串长度函数LEN(SPACE(3)-SPACE(2))的值是 A)1 B)2 C)3 D)5
23 设有如下命令序列 SELECT 1 USE f1 SELECT 2 USE f2 SELECT 3 USE f3 现在要给f1文件追加新记录,但又不改变当前数据表的打开状态,应该使用命令序列 A)USE f1 B)SELECT 1 C)GO f1 D)GO 1 APPEND APPEND APPEND APPEND 24 RELEASE ALL命令的功能是()。 A)删除指定的内存变量 B)删除所有内存变量 C)删除所有文件 D)删除内存变量文件中的内存变量 25 执行命令?AT(“中心”,“国家教委考试中心”)的显示值是 A)0 B)12 C)13 D)16
26 假定字符串A=“123”,B=“234”。则下列表达式的运算结果为逻辑假的是()。 A).NOT.(A=B).OR.B$(“13579”) B).NOT.A$(“ABC”).AND.(A<>B) C).NOT.(A<>B) D).NOT.(A>=B) 27 执行如下命令序列: STORE 100 TO YA STORE 200 TO YB STORE 300 TO YAB STORE “A” TO N STORE “Y&N”TO M ?&M 最后一条命令的显示值应是()。 A)100 B)200 C)300 D)Y&M 28 在下列命令中,能够关闭数据库的命令是 A)USE B)CLOSE DATABASE C)SET DB OFF D)CLEAR
29 有以下命令序列: USE STUDENT LIST record# 姓名 出生日期 1 欧阳惠 07/12/69 2 李明 02/24/70 3 杨霞 11/05/71 INDEX ON DTOC(出生日期) TO BD LIST 执行该命令序列后,记录显示顺序是()。 A)欧阳惠 07/12/69 B)杨霞 11/05/71 李明 02/24/70 李明 02/24/70 杨霞 11/05/71 欧阳惠 07/12/69 C)杨霞 11/05/71 D)李明 02/24/70 欧阳惠 07/12/69 欧阳惠 07/12/69 李明 02/24/70 杨霞 11/05/71
30执行下列命令后,打开的数据库文件是 NAME=“WAGE” USE &NAME A)WAGE.DBF B)NAME.DBF C)&NAME.DBF D)“WAGE”.DBF 31 执行命令?TYPE('04/05/97')后,屏幕上显示的结果是 A)C B)N C)04/05/97 D)D 32 当前数据表文件有20条记录,当前记录号是10。执行命令LIST REST以后,当前记录号是 A)10 B)20 C)21 D)1 33 把当前数据表文件中“性别”字段的值全部清除,但仍保留该字段,应当使用命令 A)MODIFY STRUCTURE B)DELETE C)REPLACE D)ZAP 34 在VFP数据库管理系统中,内存变量文件的扩展名是 A)TXT B)DBT C)DBF D)MEM
35 在下列表达式中,运算结果为字符串的是 A)“1234”-“43” B)“ABCD”+“XYZ”=“ABCDXYZ” C)DTOC(DATE())>“04/05/97”) D)CTOD(“04/05/97”) 36 工资数据表文件共有10条记录,当前记录号是5,用SUM命令计算工资总和,如果不给出范围短语,那么命令 A)只计算当前记录工资值 B)计算全部记录工资值之和 C)计算后5条记录工资值之和 D)计算后6条记录工资值之和 37 函数TYPE([12]+[34])的值为 A)N B)C C)1234 D)出错信息 38 以下命令中正确的是____。 A)STORE 8 TO X,Y B)STORE 8,9 TO X,Y C)X=8,Y=9 D)X=Y=8 39 在VFP中,要删除一个未打开的数据表文件,应该用()命令。 A)ERASE <文件名> B)DELETE <文件名> C)ERASE FILE <文件名> D)CLOSE <文件名>
40 “计算机等级考试”这七个汉字作为字符串常量,在VFP中,可表示为______. A){计算机等级考试} B)(计算机等级考试) C)计算机等级考试 D)[计算机等级考试] 41 下列命令中错误的是: A)MODI TABLE B)MODI DATA C)MODI QUERY D)MODI VIEW 42 在VFP中,查询结果不能输出的格式是: A)图形 B)视图 C)浏览 D)表 43 在VFP中,清屏的命令是: A)CLS B)CLOSE C)LIST D)CLEAR 44 在VFP中,SORT命令和INDEX命令的区别是: A)前者按指定关键字排序,而后者按指定记录排序 B)前者按指定记录排序,而后者按指定关键字排序 C)前者改变了记录的物理位置,而后者却不改变 D)后者改变了记录的物理位置,而前者却不改变
45 要把两个数据表文件进行横向联接应选用命令: A)SET RELATION TO命令 B)JOIN命令 C)APPEND命令 D)UPDATE命令 46 TOTAL命令对数据表的要求是: A)未被打开 B)当前数据表文件已按同一关键字段索引或排序 C)当前数据表字段都为数值型 D)当前数据表文件是非空数据表 47 顺序执行以下赋值命令 A=‘5/6’ B=[5*6] C=5+6 之后,下列表达式中,合法的是: A)A+B B)B+C C)C+A D)A+B+C
48 在下列文件中,不必与数据表文件同时使用的文件只有: A).FPT B).IDX C).CDX D).MEM 49 下列概念中正确的是: A)在同一个工作区中,某一时刻只能有一个表文件处于打开状态 B)一个表文件可以被包含在不同的数据库中 C)一个工作区中可以同时打开多个表文件 D)JOIN命令生成的表文件可以与连接表文件在一个工作区同时打开 50 当前记录的记录号为6,执行INSERT BEFORE命令插入一条新的记录,该新记录的记录号应为: A)4 B)5 C)6 D)7 51在VFP中,能够进行条件定位的命令是 A) SKIP B) SEEK C) LOCATE D) GO
52 有如下命令序列: USE ORDERS LIST OFF AVERAGE QTY TO AQTY FOR ITEM=”奔腾Ⅱ” INDEX ON ITEM TO XRD TOTAL ON ITEM TO TTT FIELDS QTY ?AQTY 其中LIST命令显示的结果是 ITEM QTY 奔腾Ⅱ 150 HP打印机 260 奔腾Ⅱ 220 华硕主板 314 HP打印机 380 奔腾Ⅱ 122 执行以上命令序列,?AQTY命令显示的值是 A) 241 B) 220 C) 164 D) 150
53有如下命令序列: USE ORDERS LIST OFF AVERAGE QTY TO AQTY FOR ITEM=”奔腾Ⅱ” INDEX ON ITEM TO XRD TOTAL ON ITEM TO TTT FIELDS QTY ?AQTY 其中LIST命令显示的结果是 ITEM QTY 奔腾Ⅱ 150 HP打印机 260 奔腾Ⅱ 220 华硕主板 314 HP打印机 380 奔腾Ⅱ 122 执行以上命令序列后,数据表文件TTT.DBF中的记录共有 A) 6个 B) 3个 C) 2个 D) 1个
54 顺序执行命令 X=”50”、Y=6*8、Z=LEFT(“FoxBAES”,3)之后,下列表达式中,合法的表达式只有 A) X+Y B) Y+Z C) X-Z+Y D) &X+Y 55 要判断数值型变量Y是否能够被7整除,错误的条件表达式为 A) MOD(Y,7)=0 B) INT(Y/7)=Y/7 C) 0=MOD(Y,7) D) INT(Y/7)=MOD(Y,7) 56 有下列语句序列: Y=”99.88” X=VAL(Y) ? &Y=X 执行以上语句序列之后,最后一条命令的显示结果是 A) 99.88 B) .T. C) .F. D) 出错信息 57在FoxBASE中,在执行了SET DATE AMERICAN 之后,不能显示4位年份的命令是 A) ?YEAR(DATE()) B) ?LEFT(DTOC(DATE()),4) C) ?LEFT(DTOC(DATE(),1),4) D) ?SUBSTR(DTOC(DATE(),1),1,4)
58 设有学生数据表XSH.DBF(包括学号、姓名等字段)、课程数据表KCH.DBF(包括课程号、课程名等字段)和选课数据表XK.DBF(包括学号、课程号、成绩等字段)和下述命令序列: SELE 0 USE XSH ALIAS X INDEX ON 学号 TO XH1 SELE 0 USE KCH ALIAS K INDEX ON课程号TO XH2 SELE 0 USE XK SET RELATION TO 学号INTO X SET RELATION TO 课程号INTO K ADDITIVE 执行上述命令序列后,以下查询命令一定正确的是 A) LIST 学号,姓名,课程名,成绩 B) LIST 学号,A->姓名,B->课程名,成绩 C) LIST 学号, X->姓名,K->课程名,成绩 D) LIST 学号, XSH->姓名 ,KCH->课程名,成绩
二、填空题 1 . 为使日期型数据能够显示世纪(即年为4位),应该使用命令SET ON。 2. 表达式LEN(SPACE(3)-SPACE(2))的结果是。 3. 在不使用索引的情况下,为了定位满足某个逻辑条件的记录应该使用命令。 4. 假设考生数据表已经打开,数据表中有“年龄”字段。现要统计年龄小于20岁的考生人数,并将结果存储于变量M1中,应该使用的完整命令是。 5. 执行?“BYE”$“GOOD BYE”命令的结果是。 6. 从字符串“清华大学”中取出“华”字,应用SUBSTR(“清华大学”,,)。 7. 显示第三条到第五条记录的命令是LIST FOR RECNO()>2 .AND. 。 8. 设N1=“USE”,N2=“.F.”,N3=“.T.”,则?.NOT.&N2的结果是: 9. 在VFP中,使用DIR命令,将显示当前目录中扩展名为的文件。
三、操作题:写出完成下列要求的命令。 设有Student.DBf(学号、姓名、民族)和score.DBf (学号、成绩)两个数据表: 1 在它们之间建立逻辑连接,然后为每个少数民族考生的成绩增加5分,最后显示全体考生的学号、姓名和成绩。 2 设有Student.DBf(学号、姓名、民族)和score.DBf (学号、成绩)两个数据表。在它们之间建立物理连接,生成一个新的数据表文件SSC.DBF,要求包括学号、姓名、成绩三个字段。 3 对于Score.dbf数据表文件,通过学号建立分类汇总文件SC.DBF。
程序设计测验 学号: 姓名: 班级: 一、选择题 1.一个过程文件可以包含多个过程,每个过程的第一条语句是 A)PARAMETER B)DO <过程名> C)<过程名> D)PROCEDURE <过程名> 2.比较WAIT、ACCEPT和INPUT三条命令,需要以回车键表示输入结束的命令是 A)WAIT、ACCEPT、INPUT B)WAIT、ACCEPT C)ACCEPT、INPUT D)INPUT、WAIT
第3题 阅读下列程序,此程序执行后的输出结果是3 。 SET TALK OFF X=1 DO WHILE X<20 X=5*X ENDDO ?X SET TALK ON 3. A)5 B)25 C)50 D)125 第4题 下列程序的执行结果是4 。 SET TALK OFF S=0 FOR I=1 TO 5 S=S+I ENDFOR ?S SET TALK ON 4. A)10 B)15 C)20 D)25
第5题 执行下列程序,其输出结果是5 。 SET TALK OFF X=[13+7] ?X SET TALK ON 5. A)[13+7] B)20 C)13+7 D)20.00 6.有如下程序 主程序:ZCX.PRG 子程序:ZCX1.PRG SET TALK OFF K1=K1+'200' K1='12' RETURN ?K1 DO ZCX1 ?K1 RETURN 用命令DO ZCX运行程序后,屏幕显示的结果为 A)12 B)12 C)12 D)12 200 212 12200 12
7.执行如下程序 SET TALK OFF S=0 I=1 INPUT “N=?” TO N DO WHILE S<=N S=S+I I=I+1 ENDDO ?S SET TALK ON 如果输入N值为5,则最后S的显示值是 A)1 B)3 C)5 D)6 8.在VFP中,用于建立过程文件PROG1的命令是 A)CREATE RPOG1 B)MODIFY COMMAND PROG1 C)MODIFY PROG1 D)EDIT PROG1
9.有如下程序 SET TALK OFF CLEAR AA=“全国计算机等级考试” BB=“九八” CC=“一” ?AA ??BB+“年第”+CC+“次考试” 执行程序后,屏幕显示 A)全国计算机等级考试九八年第一次考试 B)全国计算机等级考试 九八年第一次考试 C)全国计算机等级考试BB年第CC次考试 D)全国计算机等级考试 BB年第CC次考试
10.有程序如下 SET TALK OFF USE CJ M->ZF=0 DO WHILE .NOT.EOF() M->ZF=M->ZF+ZF SKIP ENDDO ?M->ZF RETURN 其中数据表文件CJ.DBF中有2条记录,内容如下: XM ZF 1 李四 500.00 2 张三 600.00 运行该程序的结果应当是 A)1100.00 B)1000.00 C)1600.00 D)1200.00
11.有如下程序 SET TALK OFF DIMENSION K(2,3) I=1 DO WHILE I<=2 J=1 DO WHILE J<=3 K(I,J)=I*J ??K(I,J) ??"" J=J+1 ENDDO ? I=I+1 ENDDO RETURN 运行此程序的结果是 A)1 2 3 B)1 2 C)1 2 3 D)1 2 3 2 4 6 3 2 1 2 3 2 4 9
12.有如下程序 SET TALK OFF M=0 N=0 DO WHILE N>M M=M+N N=N+10 ENDDO ?M RETURN 运行此程序显示的M值是 A)0 B)10 C)100 D)99
13.有如下程序 主程序:Z.PRG 子程序:Z1.PRG SET TALK OFF X2=X2+1 STORE 2 TO X1,X2,X3 DO Z2 X1=X1+1 X1=X1+1 DO Z1 RETURN ?X1+X2+X3 RETURN 子程序:Z2.PRG X3=X3+1 RETURN TO MASTER 执行命令DO Z后,屏幕显示的结果为 A)9 B)10 C)3 D)4
14.有如下程序 主程序:ZCX.PRG 子程序:ZCX1.PRG SET TALK OFF K1=K1+'200' K1='AB' ?K1 DO ZCX1 RETURN ?K1 RETURN 执行命令DO ZCX后,屏幕显示的结果为 A)AB B)AB200 C)AB200 D)200 AB200 AB200 AB 200
第15、16、17题 设有两个数据表文件XUESH和CHENGJ,分别保存某班学生的情况及考试成绩。其结构如下: XUESH表文件结构: 字段名 类型 宽度 小数 姓名 C 8 学号 C 2 CHENGJ表结构; 字段名 类型 宽度 小数 学号 C 2 课程号 C 2 成绩 N 3 0 下列程序的功能是列出平均成绩>=85的学生学号、姓名和平均成绩。 SET TALK OFF SELECT l USE CHENGJ SELECT 2 USE XUESH
DO WHILE .NOT.EOF() SELECT l AVERAGE 成绩 TO JUNFEN FOR 15 16 IF JUNFEN>=85 ?学号,姓名,JUNFEN ENDIF 17 ENDDO CLOSE DATA RETURN 15.A)学号=A->学号 B)学号=B->学号 C)ALL D)NEXT 16. A)SELECT l B)SELECT 2 C)SKIP D)GO TOP 17.A)SKIP B)SKIP -1 C)GO TOP D)GO BOTTOM
第18、19题 打开数据表文件GZ.DBF后,执行LIST命令,屏幕显示: RECORD# 姓名 性别 职称 工资 奖金 实发工资 1 李钢 男 工人 245 50 295 2 孙延生 男 工程师 300 70 370 3 王明 女 工人 225 40 265 4 马芳香 女 工人 255 70 325 5 赵福生 男 工程师 220 70 390
第18题 运行下列程序段执行的功能是18 。 USE GZ LOCATE FOR 性别=“女” DO WHILE .NOT.EOF() IF姓名=“王明” DELETE ENDIF CONTINUE ENDDO PACK USE 18.A)将性别为“女”的所有职工的记录物理删除 B)将性别为“女”、名字为“王明”的职工记录逻辑删除 C)将名字为“王明”的所有职工记录物理删除 D)将性别为“女”、名字为“王明”的职工记录物理删除
第19题 运行下列程序段执行的功能是19 。 USE GZ DO WHILE .NOT.EOF() IF 性别=“男” SKIP LOOP ENDIF RPLACE 奖金 WITH 奖金十100 SKIP ENDDO USE 19. A)将性别为“男”的所有职工奖金增加100元 B) 将性别为“女”的所有职工奖金增加100元 C) 只将性别为“女”的当前职工奖金增加l00元 D) 只将性别为“男”的当前职工奖金增加100元
二、填空题 第20、21、22题 要计算0~100之间奇数之和,试将下列程序补充完整。 SET TALK OFF X=0 Y=0 DO WHILE X< 20 X=X+1 IF 21 LOOP ELSE 22 ENDIF ENDDO ?“0~100之间的奇数之和为:”,Y SET TALK ON RETURN
第23—27题有四个数据表,表文件名及其中各字段名如下:第23—27题有四个数据表,表文件名及其中各字段名如下: 1)T1.DBF(学生) 2) T2.DBF(教师) 学号 姓名 班级 职工号 教师 姓名 课号 3) T3.DBF(课程安排一) 4) T4.DBF(课程安排二) 班级 课号 课号 课程名称 教室 要求按学号顺序给出每个学生所要学的课程名称、任课教师姓名及教室。程序如下: SELE l USE T1 1NDEX 23 TO Tl_1 SELE 3 USE T3 SELE 1 JOIN 24
SELE 2 USE T2 SELE 1 USE T1T3 JOIN 25 SELE 4 USE T4 SELE 1 USE T1T3T2 JOIN 26 27 LIST CLOSE ALL RETURN
第28、29、30题 以下是计算1~10的阶乘的程序,请将程序补充完整。 CLEAR SET TALK OFF I=1 DO WHILE .T. K=1 28 DO WHILE J<I+1 29 J=J+1 ENDDO ?K I=I+1 IF I>10 30 ENDIF ENDDO RETURN
31.阅读下列程序,并给出运行结果 SET TALK OFF CLEAR STORE 0 TO X,Y,S1,S2,S3 DO WHILE X<10 X=X+1 DO CASE CASE INT(X/2)=X/2 S1=S1+X/2 CASE MOD(X,3)=0 S2=S2+X/3 CASE INT(X/2)<>X/2 S3=S3+1 ENDCASE ENDDO ?S1,S2,S3 SET TALK ON RETURN 运行以上程序后,屏幕显示___31___。
32.数据表文件ks.dbf中有成绩字段(数值型),其值为全国计算机等级考试考生成绩。有如下程序段32.数据表文件ks.dbf中有成绩字段(数值型),其值为全国计算机等级考试考生成绩。有如下程序段 USE ks mx=0 DO WHILE.NOT.EOF() mx=MAX(成绩,mx) SKIP ENDDO ?mx RETURN 执行以上程序后,?命令显示的数据是__32__
33.共有五个数据表文件std1.dbf——std5.dbf,下面程序的功能是删除每个表文33.共有五个数据表文件std1.dbf——std5.dbf,下面程序的功能是删除每个表文 件的末记录。请填空。 n=1 DO WHILE n<=5 db=__33__ USE &db GOTO BOTTOM DELETE PACK n=n+1 ENDDO USE
34、35.下面程序的功能是根据销售数据表文件sale.dbf中的数据去修改库存文件inventry.dbf数据,请对程序填空。34、35.下面程序的功能是根据销售数据表文件sale.dbf中的数据去修改库存文件inventry.dbf数据,请对程序填空。 SELECT 1 USE inventry SELECT 2 USE sale DO WHILE __34__ SELECT 1 LOCATE FOR 商品名=b->商品名 REPLACE 数量 WITH 数量-b->数量,总金额 WITH 单价*数量 SELECT 2 __35__ ENDDO CLOSE DATABASE
36有程序段如下: STORE 0 TO X,Y DO WHILE.T. X=X+1 Y=Y+X IF X>=100 EXIT ENDIF ENDDO ?”Y=”+STR(Y,3) 这个程序执行后的结果是___36___。
37.已经建立了工资数据表文件GZ.DBF,要修改其中水电费字段值,请在下面程序中填空。37.已经建立了工资数据表文件GZ.DBF,要修改其中水电费字段值,请在下面程序中填空。 SET TALK OFF CLEAR USE GZ ACCEPT “要将水电费字段清零吗?<Y/N>” TO P IF ___37___ REPLACE ALL 水电费WITH 0 ENDIF GO TOP BROWS FIELDS 姓名,水电费 USE RETURN
38、39.运行下列程序,若依次输入数据2.5,8,2.5,3,2,2,10则输出结果是___38___和___39___38、39.运行下列程序,若依次输入数据2.5,8,2.5,3,2,2,10则输出结果是___38___和___39___ SET TALK OFF I=1 DO WHILE I<=2 CLEAR INPUT “A=” TO A IF A>INT(A).OR.A>=10 LOOP ELSE INPUT “B=” TO B IF B=INT(B).AND.B<10 LOOP ELSE ?”A+B=”,A+B ENDIF ENDIF I=I+1 ENDDO
40、41.有下列程序 **主程序PROG.PRG** **子程序SUBPRO.PRG** SET TALK OFF PRIVATE X X=“同学们” PUBLIC Z Y=“你们好!” X=100 ?”主程序中X=”,X Y=200 ?”主程序中Y=”,Y Z=300 DO SUBPRO ?”子程序中X=”,X ?”返回主程序后X=”,X ?”子程序中Y=”,Y ?”返回主程序后Y=”,Y ?”子程序中Z=”,Z ?”返回主程序后Z=”,Z RETURN SET TALK ON RETURN 执行命令DO PROG后X=___40___ 返回主程序后Z=___41___