文档库 最新最全的文档下载
当前位置:文档库 › VisualFoxpro6练习题

VisualFoxpro6练习题

VisualFoxpro6.0练习题

一、选择题

1.下列选项中能够直接实现对数据库中数据操作的软件是:

A)字处理软件B)操作系统C)数据库管理系统D)翻译系统

2.数据库系统的核心是:

A)编译系统B)数据库C)操作系统D)数据库管理系统

3.下列关于数据库系统的正确叙述是:

A)数据库系统减少了数据冗余B)数据库系统避免了一切数据冗余

C)数据库系统中数据的一致性是指数据类型的一致D)数据库系统比文件系统能管理更多的数据

4.下列关于数据库系统的正确叙述是:

A)数据库中只存在数据项之间的联系B)数据库的数据项之间和记录之间都存在联系

C)数据库的数据项之间无联系,记录之间存在联系D)数据库的数据项之间和记录之间都不存在联系5.数据库DB、数据库系统DBS、数据库管理系统DBMS这三者之间的关系是:

A)DBS包括DB和DBMS B)DBMS包括DB和DBS C)DB包括DBS和DBMS D)DBS就是DB,也就是DBMS

6.按照数据模型分类,数据库系统可以分为三种类型,正确的是:

A)大型、中型和小型B)西文、中文和兼容C)层次、网状和关系D)数据、图形和多媒体

7.按照数据模型分类,V isual FoxPro属于:

A)层次型B)网状型C)关系型D)混合型

8.数据库管理系统是:

A)应用软件B)辅助设计软件C)系统软件D)科学计算软件

9.关系数据库管理系统存储与管理数据的基本形式是:

A)关系树B)二维表C)结点路径D)文本文件

函数和表达式模拟试题

一、选择题

1.下列数据为常量的是:

A)02/18/99 B)F C).N. D)TOP

2."程序设计"这四个汉字作为字符串常量,在V isual FoxPro中可表示为:

A){程序设计} B)(程序设计)C)程序设计D)'程序设计'

3.下述字符串表示方法正确的是:

A)""等级考试"" B)['等级考试'] C){"等级考试"} D)[[等级考试]]

4.如果内存变量DT是日期型的,那么给该变量赋值正确的操作是:

A)DT=08/10/97 B)DT="08/10/97" C)DT=CTOD(08/10/97)D)DT= CTOD("08/10/97")

5.执行命令STORE CTOD([08/11/99]) TO AA后,变量AA的数据类型是:

A)日期型B)数值型C)字符型D)浮点型

6.在"人事档案"表文件中,"婚否"是逻辑型字段(已婚为逻辑真值),"性别"为字符型字段,如果查询"已婚女同志",应该

使用的条件表达式是:

A)婚否.OR.(性别="女")B)婚否.AND.(性别=女)

C)(婚否=.T.).AND.(性别="女")D)已婚.OR.(性别="女")

7.设L=668,M=537,N="L+M",表达式5+&N的值是:

A)类型不匹配B)5+L+M C)1210 D)5+&N

8.设A=[5*3+6],B=5*3+6,C='5*3+6',在下面的表达式中,合法的是:

A)A+B B)B+C C)C+A D)A+B+C

9.某数据表中包含如下的两个字段:性别(C,2)、奖金(N,6,2),如果需要查询奖金在100元以下或400元以上的男职工

和奖金在200元以上的女职工,应该使用的条件是:

A)性别="男".AND.奖金<=100.OR.奖金>=400.AND.性别="女".AND.奖金>=200

B)性别="男".AND.奖金<=100.OR.奖金>=400.OR.性别="女".AND.奖金>=200

C)性别="男".AND.(奖金<=100.OR.奖金>=400).AND.性别="女".AND.奖金>=200

D)性别="男".AND.(奖金<=100.OR.奖金>=400).OR.性别="女".AND.奖金>=200

10.在下列表达式中,运算结果为字符串的是:

A)"1551"+"66" B)ABCD+XYZ=ABCDXYZ

C)DTOC(DATE())>"08/13/98" D)CTOD("08/13/99")

11.在下列表达式中,运算结果为数值的是:

A)"1234"+"3579" B)CTOD("05/08/93")-11

C)130+350=480 D)LEN("SFDE")-1

12.假定X=5,Y=8,执行下列运算后,结果为数值型数据的是:

A)?X=Y-3 B)?Y-3=X C)X=Y D)X+3=Y

13.下列表达式的运算结果为日期型数据的是:

A)08/15/97-12 B)DATE()-CTOD("05/13/98")

C)DA TE()-30 D)DATE()-TIME()

14.假设X=10,Y=8,下列表达式中结果为逻辑真值的是:

A)(X>Y).AND."BOOKSTORE"$"BOOK" B)(X

C)(XY).OR. "BOOK"$"BOOKSTORE"

15.下列函数中,函数值为数值型数据的是:

A)CTOD(01/11/99)B)SUBSTR(DTOC(DATE()),7)

C)SPACE(3)D)YEAR(DATE())

16.顺序执行下列命令之后,屏幕显示的结果是:

A="中华人民共和国"

B="人民"

?AT(B,A)

A)0 B)5 C)8 D)错误信息

17.顺序执行下列命令之后,屏幕显示的结果是:

STORE "V isual FoxPro" TO TT

?UPPER(RIGHT(TT,3))

A)VISUAL FOXPRO B)PRO C)Pro D)VIS

18.函数ROUND(15368.9236,-2)的结果为:

A)15368 B)15370 C)15400 D)15300

19.执行以下命令:

M="THIS IS AN APPLE"

?SUBSTR(M,INT(LEN(M)/2+1),2)

A)TH B)IS C)AN D)AP

20.假设当前日期是1997年9月20日,给出字符串"97年9"的表达式是:

A)SUBSTR(DTOC(DA TE()),7,2)+"年"+SUBSTR(DTOC(DATE()),1,2)+"月"

B)SUBSTR(DTOC(DA TE()),7,2)+"年"+SUBSTR(DTOC(DA TE()),2,1)+"月"

C)YEAR(DATE())+"年"+MONTH(DA TE())+"月"

D)STR(YEAR(DATE()),4)+"年"+STR(MONTH(DATE()),2)+"月"

21.函数DAY(07/29/97)的返回值是:

A)7 B)0 C)计算机日期D)出错信息

22.函数TIME()的数据类型是:

A)数值型B)字符型C)日期型D)逻辑型

23.条件函数IIF(MOD(15,-8)>3,10,-10)的结果为:

A)10 B)-10 C)-1 D)7

24.如果变量X=11,函数TYPE("X=110")的结果为:

A)L B)N C)C D)出错信息

25.如果变量D="08/13/98",命令?TYPE("&D")的结果为:

A)D B)N C)C D)出错信息

数据表模拟试题

一、选择题

1.下列属于内存变量文件的扩展名是:

A).TXT B).FPT C).DBF D).MEM

2.一个数据表中有2个备注型字段,这些字段的内容存放在:

A)2个.FPT文件中B)同一个.FPT文件中

C)2个.DBF文件中D)同一个.DBF文件中

3.数据表文件中的字段是一种:

A)常量B)变量C)函数D)运算符

4.在数据表中,逻辑型、日期型和备注型字段的宽度分别被系统定义为:

A)3,8,10 B)1,6,10 C)1,8,任意D)1,8,4

5.一个数据表文件的数值型字段要求保留5位小数,那么它的宽度最少应当定义成:

A)5位B)6位C)7位D)8位

6.已打开数据表文件,假设"出生日期"字段为日期型,下列表达式中结果不是日期型的是:

A)CTOD("08/12/96")B)出生日期+5 C)DTOC(出生日期)D)DA TE()-2

7.在V isual FoxPro的数据表文件中,每条记录的总长度比用户定义的各个字段宽度之和多一个字节,该字节用于:

A)存放删除标记B)存放记录号C)存放索引关键字D)存放记录宽度

8.下列操作中,不能用MODIFY STRUCTURE命令实现的是:

A)增加数据表中的字段B)删除数据表中的字段

C)修改数据表中字段的宽度D)删除数据表中的某些记录

9.假设数据表中"婚否"字段为逻辑型(已婚为逻辑真值),如果要显示所有未婚职工的情况,应该使用的命令是:

A)LIST FOR 婚否=F B)LIST FOR 婚否="F"

C)LIST FOR .NOT.婚否D)LIST FOR 婚否="未婚"

10.数据表文件"学生表.DBF"中有性别(字符型)和平均分(数值型)字段,如果显示平均分超过90分和不及格的全部女生的

记录,应该使用的命令是:

A)LIST FOR 性别="女".OR.平均分>90.OR.平均分<60

B)LIST FOR 性别="女",平均分>90,平均分<60

C)LIST FOR 性别="女".AND.平均分>90.AND.平均分<60

D)LIST FOR 性别="女".AND.(平均分>90.OR.平均分<60)

11.当打开一个数据表文件后,执行命令SKIP -1,则命令?RECNO()的结果是:

A)0 B)1 C)-1 D)出错信息

12.假设数据表中共有10条记录,当执行命令GO BOTTOM后,命令?RECNO()的结果是:

A)9 B)10 C)11 D)1

13.假设数据表中共有30条记录,当前记录号为20,当执行命令LIST NEXT 6之后,命令?RECNO()的结果是:

A)24 B)25 C)26 D)30

14.假设数据表中共有50条记录,当执行命令DISPLAY ALL之后,命令?RECNO()的结果是:

A)1 B)50 C)51 D)0

15.当前数据表中共有20条记录,如果在第10条记录后面插入一条新记录,应该使用的命令是:

A)GO 5 B)GO 5 C)EDIT 5 D)BROWSE

INSERT APPEND

16.假如数据表中有"数学"、"语文"、"物理"、"化学"、"英语"、以及"总分"等字段,它们都为数值型数据,如果要求出所有

学生的总分并添入总分字段中,应使用的命令是:

A)REPLACE 总分WITH 数学+语文+物理+化学+英语

B)REPLACE 总分WITH 数学,语文,物理,化学,英语

C)REPLACE ALL 总分WITH 数学+语文+物理+化学+英语

D)REPLACE 总分WITH 数学+语文+物理+化学+英语FOR ALL

17.如果要恢复用DELETE命令删除的若干条记录,应该使用:

A)RECALL命令B)按下ESC键C)RELEASE命令D)FOUND命令

18.ZAP命令可以删除当前数据表文件的

A)全部记录B)满足条件的记录C)本身D)全部有删除标记的记录

19.命令DELETE ALL和ZAP命令的区别是:

A)DELETE ALL只删除当前工作区的所有记录,而ZAP删除所有工作区的记录

B)DELETE ALL删除当前工作区的所有记录,而ZAP只删除当前记录

C)DELETE ALL只删除记录,而ZAP连同表文件一起删除

D)DELETE ALL删除记录后,可以用RECALL命令恢复,而ZAP删除后不能恢复

20.某数据表中共有10条记录,当前记录为6,先执行命令SKIP 10,再执行命令?EOF(),执行最后一条命令后,显示的结果是:

A)错误信息B)11 C).T. D).F.

21.打开一个空的数据表文件,用函数RECNO()进行测试,结果为:

A)空格B)1 C)错误信息D)0

22.对职称是副教授的职工,按工资从多到少进行排序,工资相同者,按年龄从大到小排列,排序后生成的表文件名是FGB.DBF,

应该使用的命令是:

A)SORT TO FGZ ON 工资/A,出生日期/D FOR 职称="副教授"

B)SORT TO FGZ ON 工资/D,出生日期/A FOR 职称="副教?quot;

C)SORT TO FGZ ON 工资/A,出生日期/A FOR 职称="副教授"

D)SORT TO FGZ ON 工资/D,出生日期/D FOR 职称="副教授"

23.在学生数据表中,有姓名、性别、出生日期、总分等字段,现要求对总分在270分以上的男同学按年龄从大到小排序,排序后

生成的新表文件为XSM.DBF,应该使用的命令是:

A)COPY TO XSM ON 出生日期FOR 性别="男".AND.总分>270

B)SORT TO XS M ON 出生日期/D FOR 性别="男".AND.总分>270

C)SORT TO XS M ON 出生日期FOR 性别="男".AND.总分>270

D)INDEX TO XSM ON 出生日期FOR 性别="男".AND.总分>270

24.数据表中有工资字段,现要求按工资字段的降序建立索引文件GZJX.IDX,应该使用的命令是:

A)INDEX ON 工资/D TO GZJX

B)SET INDEX ON -工资TO GZJX

C)INDEX ON -工资TO GZJX

D)REINDEX ON 工资TO GZJX

25.假设日期格式是yy.mm.dd,要求按工资升序排序,工资相同者按参加工作时间的先后顺序排列建立索引文件,应该使用的命令是:

A)INDEX ON 工资/A,工作日期/D TO GR.IDX

B)SET INDEX ON 工资-工作日期TI GR.IDX

C)INDEX ON STR(工资,6,2)+DTOC(工作日期)TO GR.IDX

D)INDEX ON STR(工资+YEAR(工作日期))TO GR.IDX

26.TOTAL命令的功能是:

A)对数值型字段按关键字分类求和

B)分别计算所有数值型字段的和

C)计算每个记录中数值型字段的和

D)求满足条件的记录个数

27.计算各类职称的工资总和,并把结果存入GZZH数据表中的命令是:

A)SUM 职称TO GZZH

B)SUM 工资TO GZZH

C)TOTAL ON 职称TO GZZH FIELDS 工资

D)TOTAL ON 工资TO GZZH FIELDS 职称

28.一个数据表中共有10条记录,当函数EOF()为.T.时,当前记录号应为:

A)10 B)11 C)0 D)1

二、填空题

1.在V isual FoxPro的命令中,<范围>选项可以使用的四种参数形式是:、、、。

2.有一个表文件AB.DBF,并且已经建立了索引文件IAB.IDX。在修改该表文件后,相应更新索引文件的命令是。

3.有计算机等级考试考生数据表文件STD.DBF和合格考生数据表HG.DBF。两个表的结构相同。为了颁发合格证书并备案,把

STD数据表中的"笔试成绩"和"上机成绩"均及格(大于等于60分)记录的"合格否"字段修改为逻辑真,然后将合格的记录追加到

合格考生数据表HG.DBF中。请对以下操作命令填空。

USE STD

LIST

记录号准考证号姓名性别笔试成绩上机成绩合格否

1 11001 梁小冬女70 80 .F.

2 11005 林旭男95 78 .F.

3 11017 王一平男60 40 .F.

4 11083 吴大鹏男90 60 .F.

5 11080 杨纪红女58 67 .F.

REPLACE FOR 笔试成绩>=60.AND.上机成绩>=60

USE HG

APPEND FORM STD FOR

LIST

USE

4.假设有数据表SBK.DBF,其中存有若干仪器设备清单,其结构如下:部门代码(C,1)、设备名称(C,10)、

购买价格(N,10,2)、购入日期(D)、是否可用(L)。

该表包含的记录如下:

记录号部门代码设备名称购买价格购入日期是否可用

1 3 示波器13500.00 05/30/90 .T.

2 1 微机PC 9280.00 02/16/98 .F.

3 4 打印机3870.00 11/05/98 .F.

4 3 打印机3870.00 12/15/99 .T.

5 1 投影仪650.90 09/23/94 .T.

6 5 空调器2100.00 07/08/95 .T.

7 3 微机PC 9280.00 05/13/98 .T.

8 2 服务器32500.00 06/11/99 .T.

根据以下各题的要求写出相应的命令:

1)打开设备数据表SBK.DBF的命令是。

2)显示数据表结构的命令是。

3)用分屏方式显示所有记录。

4)查询95年12月31日以前购买的所有设备的情况。

5)统计所有不能使用的设备数,并存入内存变量BFSH 。

6)把所有记录按照购入日期从早到晚的顺序,同年购买的按照购买价格的降序排列,存入一个新数据表SBN.DBF 。

5.打开上题的设备表后,依次执行如下命令,请写出相应的显示数据。

1)LOCATE FOR 设备名称="打印机"

DISP OFF 部门代码,购买价格,是否可用

屏幕上显示的数据为。

2)CONTINUE

DISP OFF 部门代码,购买价格,是否可用

屏幕上显示的数据为。

3)SKIP -2

DISP OFF 设备名称,部门代码

屏幕上显示的数据为。

4)INDEX ON 部门代码TO SBI

GO TOP

DISP 购入日期

屏幕上显示的日期为。

5)SKIP 5

DISP 购入日期

屏幕上显示的日期为。

6)GO BOTTOM

DISP 购入日期

屏幕上显示的日期为。

6.执行如下命令序列:

USE BOOKS

LIST

记录号书号书名作者定价

1 P8291D 操作系统王亮12.00

2 P1322F 接口技术刘云力15.00

3 B1963E 离散数学周云飞13.50

4 F9136H 单片机于丽丽18.00

INDEX ON 书号TO SH

SET INDEX TO SH

LIST

在最后一条命令所显示的数据记录中,记录号的顺序是。

7.执行如下命令序列:

USE STUDENT

LIST

记录号姓名学号年龄性别

1 王亮098725 20 男

2 刘云力099321 19 男

3 周云飞097310 21 女

4 于丽丽099512 18 女

5 李红云098320 20 女

6 钱博声099132 18 男

INDEX ON 年龄TO NL

FIND 20

SKIP

DISP 姓名

最后一条命令显示的学生姓名是。

8.执行如下命令序列

USE ZG

LIST

记录号姓名职称基本工资

1 王亮工人300.00

2 刘云力工程师450.00

3 周云飞工人280.00

4 于丽丽技术员350.00

5 李红云总工程师550.00

INDEX ON ZC+STR(1000-基本工资,6,2)TO ZG

LIST 职称,基本工资

执行最后一条命令后,记录号的显示顺序是。

9.设数据表文件SC.DBF中有如下记录,其中学号、姓名为字符型字段,其余均为数值型字段,并且假定该表已打开。

记录号学号姓名出生日期性别籍贯贷款

1 913101 王刚03/11/73 男广西350

2 913102 李力03/21/72 女江西200

3 913103 赵冲04/23/73 女安徽150

4 913104 李心04/28/74 女辽宁100

5 924104 章文05/06/75 男云南230

6 924105 曾红05/03/75 男河北50

7 924106 寒雪01/18/73 男山西50

8 924107 陈冬09/16/75 男贵州100

1)按"贷款"建立索引文件SCDK,应该使用命令。

2)求出贷款的总和并存入变量DKH中,应该使用命令。

3)求出贷款的平均值并存入变量PJDK中,应该使用命令。

4)统计女学生的人数并存入变量NXRS中,应该使用命令。

10.设有职工数据表文件,其内容如下:

编号姓名部门工资奖金

1001 王刚会计系850 200

1002 李力会计系700 200

1003 赵冲会计系730 200

2001 李心金融系900 300

2002 章文金融系1000 200

3003 曾红财务科900 100

3008 寒雪财务科1200 100

3006 陈冬财务科1300 100

请对以下命令的执行结果填空:

USE 职工

INDEX ON 部门TO BM

TOTAL ON 部门TO TEMP

USE TEMP

SORT ON 工资TO TEMP1

USE TEMP1

DISP 部门,工资,奖金&&该命令的显示结果是。

USE 职工

A VERAGE 工资TO A FOR 部门="会计系" &&变量A的值为。INDEX ON 工资TO GZ

GO 1

?编号,姓名&&该命令的显示结果为。

SEEK 900

SKIP 3

?工资+奖金&&该命令的显示结果是。

LOCATE FOR 工资=900

CONTINUE

?姓名&&该命令的显示结果是。

11.在学生数据表中,年龄字段为数值型,标志字段为逻辑型,请填空:USE 学生

INDEX ON 年龄TO NL

将记录指针定位在第一个年龄是20的记录上,应该使用的命令是。

显示所有年龄为20的学生记录,应该使用命令DISP ALL 。

执行下列命令:

SET INDEX TO

GO 11

之后,把从记录号11到最后一条记录的标志字段设置为逻辑真,应使用命令:

REPLACE 标志WITH .T.

数据库模拟试题

1.下列说法中正确的是:

A)当项目管理器处于打开状态时,使用CREATE DATABASE命令创建的数据库将会自动添加到项目中B)当数据库处于打开状态时,用CREATE命令创建的表文件将会自动添加到该数据库中

C)CLOSE DATABASE在关闭数据库的同时,不会将数据库中的表同时关闭

D)自由表不能被添加到数据库中

2.下列命令中能打开数据库设计器的是:

A)CREATE DABASE B)OPEN DATABASE

C)SET DATABASE TO D)MODIFY DA TABASE

3.下列命中不能关闭数据库的是:

A)CLOSE DATABASE B)CLOSE ALL

C)CLOSE D)CLOSE DATABASE ALL

4.下列说法中正确的是:

A)自由表中的字段名最多只能为10个字符,数据库表则最多可为128个

B)当数据库表变成自由表时,数据库表的长字段名将保留

C)对于数据库表的长字段名,可以只使用字段名的前10个字符代表该字段

D)当数据库表成为自由表时,使用长字段名创建的索引文件可继续使用

5.下列有关索引的说法,正确的是:

A)可以在自由表中创建主索引

B)建立主索引的主关键字值不能为空,但可以有重复数值

C)可以在自由表中建立候选索引

D)唯一索引中只保留关键字段值相同的第一条记录

6.下列有关数据表之间关系的说法中错误的是:

A)永久关系在数据库设计器中表现为联系数据表索引的一条连线

B)永久关系同临时关系一样,可以控制各数据表内记录指针的同步移动

C)在一对多关系中,一方必须为主索引文件

D)多对多关系可以拆分为两个一对多关系

7.V isual FoxPro中的参照完整性规则不包括:

A)更新规则B)删除规则C)查询规则D)插入规则

查询和视图模拟试题

一、选择题:

1.以下关于查询的描述正确的是:

A)不能根据自由表建立查询

B)只能根据自由表建立查询

C)只能根据数据库表建立查询

D)可以根据数据库表和自由表建立查询

2.以下关于视图的描述正确的是:

A)只能根据自由表建立视图

B)只能根据查询建立视图

C)只能根据数据库表建立视图

D)可以根据数据库表和自由表建立视图

3.以下关于交叉表查询说法不正确的是:

A)交叉表查询可以在多个表中进行查询

B)交叉表查询可以对视图进行查询

C)交叉表查询只能使用查询向导获得

D)交叉表查询只能对一个表进行查询

4.查询设计器中包括的选项卡有:

A)字段、筛选、排序依据B)字段、条件、分组依据

C)条件、排序依据、分组依据D)条件、筛选、杂项

5.下列不属于查询结果输出格式的是:

A)浏览B)图形C)屏幕D)视图

结构化查询语言模拟试题

一、选择题:

1.SQL的数据操作语句不包括:

A)INSERT B)UPDA TE C)DELETE D)CHANGE

2.SQL语句中条件短语的关键字是:

A)WHERE B)FOR C)WHILE D)CONDITION

3.SQL语句中修改表结构的命令是:

A)MODIFY TABLE B)MODIFY STRUCTURE

C)ALTER TABLE D)ALTER STRUCTURE

4.SQL语句中删除表的命令是:

A)DROP TABLE B)DELETE TABLE

C)ERASE TABLE D)DELETE DBF

5.SQL SELECT语句为了将查询结果存放到临时表中应该使用的短语是:

A)WHERE B)INTO C)GROUP BY D)OREDER BY

结构化程序设计模拟试题

一、选择题

1.将逻辑值赋给内存变量LZ的正确方法是:

A)LZ=".T." B)STORE "T" TO LZ C)LZ=TRUE D)STORE .T. TO LZ

2.将98年国庆节的日期赋给内存变量ND的正确方法是:

A)ND=DTOC("10/01/98")B)ND=CTOD([10/01/98])

C)STORE DA TE()TO ND D)STORE 10/01/98 TO ND

3.执行命令INPUT "请输入出生日期:" TO MDA TE时,如果通过键盘输入CTOD("01/01/88")则内存变量MDA TE的值应当是:

A)CTOD("01/01/88") B)"01/01/88"

C)日期值01/01/88 D)拒绝接收,MDA TE不赋值

4.在DO WHILE .T.的循环中,退出循环应使用的命令是:

A)LOOP B)EXIT C)CLOSE D)CLEAR

5.下列程序的运行结果是:

A=10

IF A=10

S=0

ENDIF

S=1

?S

A)0 B)1 C)程序出错D)结果无法确定6.有如下的程序:

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

7.有如下程序:

SET TALK OFF

STORE 2 TO S,K

DO WHILE S<14

S=S+K

K=K+2

ENDDO

?S,K

SET TALK ON

RETURN

此程序运行后的输出结果是:

A)22 10 B)22 8 C)14 8 D)14 10

8.执行如下程序:

SET TALK OFF

S=0

I=1

INPUT "N=?" TO N

DO WHILE S<=N

S=S+1

I=I+1

ENDDO

?S

SET TALK ON

如果输入N的值为5,则最后S的显示值是:A)1 B)3 C)5 D)6

9.有如下的程序:

SET TALK OFF

M=0

N=100

DO WHILE N>M

M=M+N

N=N-10

ENDDO

?M,N

RETURN

运行此程序的显示结果为:

A)0 10 B)10 90 C)90 100 D)100 90

10.运行下列程序后,语句?"123"被执行的次数是:

I=0

DO WHILE I<10

IF INT(I/2)=I/2

?"123"

EDNIF

?"ABC"

I=I+1

ENDDO

RETURN

A)10 B)5 C)11 D)6

11.执行语句DIMENSION M(3),N(2,3)后,数组M和N的元素个数分别为:

A)1个,2个B)3个,6个C)3个,5个D)4个,12个

12.在程序中,如果先用命令DIMENSION Q(2,3)定义了一个数组,再对每个下标变量赋值,

Q(1,1)=1,Q(1,2)=2,Q(1,3)=3,Q(2,1)=4,Q(2,2)=5,Q(2,3)=6,然后执行命令?Q(2),则显示的结果为:A)变量未定义B)4 C)2 D).F.

13.有如下程序:

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

14.假设当前数据表中有5个字段:学号(C)、姓名(C)、政治(N)、英语(N)、数学(N),当前记录指针指向一个非空的记录,有如下命令序列:

DIMENSION X(3)

SCATTER TO X

LIST MEMORY

顺序执行上述命令之后,数组各元素的值分别是:

A)数组各元素的值是一串*号,表示数据溢出

B)有5个数组元素X(1)、X(2)、X(3)、X(4)、X(5),分别是当前记录各个字段值

C)有3个数组元素X(1)、X(2)、X(3),分别是当前记录的前3个字段值

D)有3个数组元素X(1)、X(2)、X(3),分别从当前记录开始,连续3个记录的学号字段值15.能够把数组的值存入数据表当前记录的命令是:

A)STORE B)REPLACE C)SCATTER D)GA THER

16.有如下程序:

主程序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

17.有如下程序:

主程序SS.PRG 子程序SUB1.PRG

SET TALK OFF P ARAMETER A,B

X=10 X=A+10

A=2 A=A+B

B=3 ?X,A,B

DO SUB1 WITH A,B RETURN

DO SUB1 WITH A,B

?X,A,B

SET TALK ON

RETURN

执行命令DO SS之后,第1行输出的结果是:

A)10 5 3 B)12 5 3 C)12 8 5 D)都不对

18.有如下的程序:

主程序ZZ.PRG 子程序Z1.PRG 子程序Z2.PRG

SET TALK OFF X2=X2+1 X3=X3+1

STORE 2 TO X1,X2,X3 DO Z2 RETURN TO MASTER

X1=X1+1 ?X1+X2+X3

DO Z1 RETURN

?X1+X2+X3

RETURN

用命令DO ZZ执行程序后,屏幕显示的结果是:

A)9 B)5 C)8 D)4

二、填空题

1.有3个数A,B,C,其中两个数相等,而另一个数比其他两个数都大,下列程序段的功能是找出其中最大的那个数,请填空。

DO CASE

CASE

?"C=",C

CASE

?"B=",B

CASE

?"A=",A

ENDCASE

2.程序A.PRG的功能是求1到100之间所有整数的平方和并输出结果,请填空。

SET TALK OFF

CLEAR

S=0

X=1

DO WHILE X<=100

(1)

(2)

ENDDO

?S

RETURN

3.阅读下列程序,并给出运行结果。

SET TALK OFF

CLEAR

STORE 1 TO X

STORE 20 TO Y

DO WHILE X<=Y

IF INT(X/2)<>X/2

X=1+X^2

Y=Y+1

LOOP

ELSE

X=X+1

ENDIF

ENDDO

?X

?Y

SET TALK ON

RETURN

运行结果X的值为:,Y的值为:。

4.有如下程序:

SET TALK OFF

I=1

DO WHILE I<=2

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

执行以上程序,如果依次输入数据2.5,8,2.5,3,2,2,10,则输出结果是以及。

5.下列程序的功能是删除输入字符串中所含的空格,请填空。

SET TALK OFF

ACCEPT "请输入字符:" TO X

I=2

DO WHILE " "$X

I=A T(" ",X)

(1)

I=I+1

ENDDO

?X

RETURN

6.执行下列程序,如果依次输入数据2,3.5,3.5,3,2,2,3,则输出结果是。

SET TALK OFF

I=1

DO WHILE I<=2

CLEAR

INPUT "A=" TO A

IF A<>INT(A).OR.A<1.OR.A>99

LOOP

ELSE

??A,"+",B,"=",A+B

ENDIF

I=I+1

ENDDO

7.下列程序的功能是对ABC.DBF中的字段"数量"里的数,求其偶数之和,并显示所有偶数,请填空。SET TALK OFF

USE ABC

S=0

DO WHILE .T.

?数量

S=S+数量

ENDIF

(2)

IF EOF()

(3)

ENDIF

ENDDO

?S

RETURN

8.请阅读下列程序,并根据运行结果填空。

SET TALK OFF

M=1

DO WHILE M<5

N=1

??M

DO WHILE N

TT=N+M

??TT

N=N+1

ENDDO

?

M=M+1

ENDDO

RETURN

此程序共显示行数据,第1行是,最后一行是。

9.共有5个数据表文件STD1.DBF~STD5.DBF,下列程序的功能是删除每个表文件的最后一条记录,请填空。

N=1

DO WHILE N<=5

DB=

USE &DB

GOTO BOTTOM

DELETE

PACK

N=N+1

ENDDO

USE

10.下列程序逐行显示职称为教授的数据记录,请填空。

USE TEACHER

DO WHILE .NOT.EOF()

CLEAR

IF 职称<>"教授"

SKIP

(1)

ENDIF

DISPLAY

WAIT "按任意键继续!"

SKIP

ENDDO

USE

11.填空完成下列程序:

SET TALK OFF

USE STD

ACCEPT "请输入待查学生姓名:" TO XM

DO WHILE .NOT.EOF()

IF

?"姓名:"+姓名,"成绩:"+STR(成绩,3,0)

ENDIF

SKIP

ENDDO

SET TALK ON

RETURN

12.已经建立了工资数据表文件GZ.DBF,在下列程序中要求修改水电费字段值,请填空。

SET TALK OFF

CLEAR

USE GZ

ACCEPT "要将水电费字段清零吗?(Y/N)" TO P

IF

REPLACE ALL 水电费WITH 0

ENDIF

GO TOP

BROWSE FIELDS 姓名,水电费

USE

RETURN

13.下列程序的功能是从键盘接受到Y或N才退出循环,请填空

DO WHILE .T.

WAIT "请输入Y/N" TO YN

IF ((UPPER(YN)<>"Y").AND.(UPPER(YN)<>"N"))

(1)

ELSE

EXIT

ENDIF

ENDDO

14.计算机等级考试考生数据表为STUDENT.DBF。笔试和上级成绩已分别录入其中的"笔试"和"上机"字段(均为数值型)中,此外另有"等级"字段(字符型)。凡两次考试均达到80分以上者,应在等级字段中

填入"优秀"。为此编写如下程序,请填空。

SET TALK OFF

USE STUDENT

DO WHILE .NOT.EOF()

IF 笔试>=80.AND.上机>=80

(1)

ENDIF

SKIP

ENDDO

USE

SET TALK ON

15.计算机等级考试的查分程序如下,请填空:

SET TALK OFF

USE STUDENT

ACCEPT "请输入准考证号:" TO NUM

LOCATE FOR 准考证号=NUM

IF

?姓名+"的成绩是:"+STR(成绩,3,0)

ELSE

?"没有此考生!"

ENDIF

USE

SET TALK ON

16.阅读下列程序,回答指定问题。

SET TALK OFF

CLEAR

USE SALARY

DO WHILE .NOT.EOF()

IF 实发工资>=250

SKIP

LOOP

ENDIF

DISPLAY

SKIP

ENDDO

CLOSE DATABASE

RETURN

该程序完成的功能是;LOOP语句的功能是。

17.假设有商品数据表文件SP1.DBF,其中商店名、商品名和品牌微字符型字段,单价和库存量为数值型字段,是否进货为逻辑型字段。该数据表记录如下:

记录号商店名商品名品牌单价库存量是否进货

1 光明商店电冰箱海尔3700 60 .F.

2 长安商店空调科龙3600 27 .T.

3 百货大楼彩电长虹2450 60 .F.

4 塞特购物中心洗衣机小鸭1600 90 .F.

5 蓝岛东区空调美的2800 2

6 .T.

6 长安商场电冰箱海尔3700 20 .T.

7 塞特购物中心彩电康佳2980 32 .F.

8 百货大楼洗衣机松下1780 12 .T.

请阅读下列程序,并将程序填写完整。

SET TALK OFF

STOR "Y" TO YN

INDEX ON 品牌TO PP

DO WHILE

ACCEPT "请输入查询的品牌:" TO CHX

SEEK

IF

DISPLAY

ELSE

?"无此品牌商品!"

ENDIF

WAIT "继续查找吗?(Y/N)" TO YN

ENDDO

?"再见!"

SET TALK ON

RETURN

18.有口令程序如下:

SET TALK OFF

CLEAR

DO WHILE .T.

@5.20 SAY "请输入口令:"

INPUT TO PW

IF DA TE()=PW

EXIT

ELSE

WAIT "口令不对,按任意件重来!"

CLEAR

ENDIF

ENDDO

SET TALK ON

CLEAR

假设今天是1999年10月15日,为通过该口令程序,应输入的口令是。19.下列程序用于在屏幕上显示一个由"*"组成的三角形(如下图),请填空。*

***

*****

*******

SET TALK OFF

CLEAR

R=1

CC=10

DO WHILE R<=4

S=1

DO WHILE S<=2*R-1

@R,CC SAY "*"

CC=CC+1

S=S+1

ENDDO

CC=10-R

(1)

ENDDO

20.下列程序要求计算每位职工的税金,并将计算结果填入工资数据表GZ.DBF中相应职工的税金字段(本单位职工最高工资为2500元),请填空。

*主程序MAIN.PRG

SET TALK OFF

TAX=0

USE GZ

DO WHILE .NOT.EOF()

SHFZ=实发工资

DO SUB

?TAX

REPLACE 税金WITH TAX

(1)

ENDDO

USE

RETURN

*子程序SUB.PRG

(2)

X=0

DO CASE

CASE A>800.AND.A<1300

X=(A-800)*0.05

CASE A>=1300.AND.A<1800

B=A-1300

X=B*0.1+500*0.05

CASE A>1800.AND.A<2300

B=A_1800

X=B*0.15+500*0.1+500*0.05

ENDCASE

RETURN

21.阅读下列程序,并写出执行A.PRG的显示结果。

*A.PRG *B.PRG

M=1 PRIV ATE M

相关文档
相关文档 最新文档