第一章至第八章VF数据库基础与程序设计综合练习题.docx
《第一章至第八章VF数据库基础与程序设计综合练习题.docx》由会员分享,可在线阅读,更多相关《第一章至第八章VF数据库基础与程序设计综合练习题.docx(78页珍藏版)》请在冰豆网上搜索。
第一章至第八章VF数据库基础与程序设计综合练习题
第一章至第八章VF数据库基础与程序设计综合练习题(VF)
要求:
抄写到作业本上,独立完成。
作业提交时间:
第十二周周三
一、单选题
1、从关系模式中指定若干属性组成新的关系的运算是()
A、联接B、投影C、选择D、排序
2、项目管理器保存以()为扩展名的文件。
A).MNXB).PJXC).SCXD).FPR
3、若函数DELETED()的值为真,则表示()
A、当前记录被物理删除B、当前记录被逻辑删除
C、当前记录未被删除D、当前记录不存在
4、若x=48.789则str(x,2)-substr(‘48.789’,5,1)的显示结果为()
A.36B.488C.498D.37
5、函数LEN(TRIM(SPACE(10))-SPACE(3))返回的值是()。
A)7B)-3C)10D)3
6、如果要在屏幕上直接看到查询结果,“查询去向”应选择()
A、屏幕B、浏览C、临时表或屏幕D、浏览或屏幕
7、有表K1.DBF(学号,总分,平均)与K2.DBF(学号,物理,化学),进行以下操作
SELEA
USEKkl
SELEB
USEKk2
JOINWITHATOK3FOR学号=A.学号FIEL学号,物理,化学,a.总分&&
(1)
问
(1)句中的命令包括的关系运算有()
(A)选择,投影(B)连接,投影
(C)选择,连接(D)选择,投影,连接
8、在VFP的数据库设计器中能建立两个表之间的()联系。
(A)临时性联系(B)永久性联系
(C)永久性联系或临时性联系(D)上述选择都不正确
9、设置数据参照完整性,要求两个表是().
(A)两个自由表(B)一个自由表和一个数据库表
(C)两个任意表(D)同一数据库中的两个表
10、在VisualFoxPro中,可以对字段设置默认值的表()。
A)必须是数据库表(B)必须是自由表
C)自由表或数据库表(D)不能设置字段的默认值
11、关系数据库用()来表示实体之间的联系。
A)树结构B)网结构C)二维表D)线性表
12、在VisualFoxpro中,主索引可在()中建立
A、自由表B、数据库表C、任何表D、自由表和视图
13、关系数据库管理系统所管理的关系是()。
A)一个DBF文件(B)若干个二维表
C)一个DBC文件(D)若干个DBC文件
14、执行SETEXACTOFF命令后,下列表达式的结果为.T.的是()。
A)”计算机”=”计算”B)”计算”==”计算机”
C)”计算”=”计算机”D)”计算机”$”计算”
15、在VisualFoxpro中,表结构中的逻辑型、通用型、日期型字段的宽度由系统自动给出,分别是()
A、1、4、8B、4、4、10C、1、10、8D、2、8、8
16、运行向导时,可以()
A.打开“文件”菜单的新建对话框
B.单击工具栏上的“向导”图标按钮
C.从工具菜单选择向导
D.以上方法都可以
17、创建数据表时,可以给字段规定NULL或NOTNULL值,NULL值的含义是()。
A)0B)空格C)1D)不确定
18、统计选课门数在两门以上学生的学号的SELECT-SQL语句是()
A、SELECT学号FROM选课表GROUPBY学号HAVINGCOUNT(*)>=2
B、SELECT学号FROM选课表HAVINGCOUNT(*)>=2
C、SELECT学号FROM选课表WHERECOUNT(*)>=2
D、SELECT学号FROM选课表GROUPBY学号WHERECOUNT(*)>=2
19、SQL语句中的数据维护命令不包括()。
A)INSERT-SQL
B)CHANGE-SQL
C)DELETE-SQL
D)UPDATE-SQL
20、以下()是报表文件的扩展名。
A.FPTB.FRXC.FRTD.FXP
21、下列叙述正确的是:
()
A.一个数据表被更新时间,它所有的索引文件会被自动更新
B.一个数据表被更新时间,它所有的索引文件不会被自动更新
C.一个数据表被更新时间,处于被打开的索引文件会被自动更新
D、当两个数据表用setrelationto命令建立关联后,调节任何一个数据表的指针都会同步移动
22、设A=2,B=3,C=4,下列表达式值为逻辑真值的是()
A、12/A+2=B^2B、3>2*BORA=CANDB<>CORA>B
C、A*B<>C+3D、A>BANDB<=COR3*A>2*C
23、设A=“THISISABOOK”,下列函数值为“IS”的是()
A)RIGHT(LEFT(A,9),2)(B)LEFT(RIGHT(A,9),2)
C)SUBSTR(A,5,2)(D)RIGHT(A,9)
24、语句DIMETP(4,5)定义的元素个数是()
A.30B.20C.9D.45
25、数据库系统的核心是()
(A)编译系统(B)数据库管理系统
(C)操作系统(D)数据库
26、在VF中,”.dbf”文件被称为()
A.数据库文件B.表文件C.程序文件D.项目文件
27、图片声音动画数据一般以()类型的字段存储在数据库记录中
A.字符型B.数值型C.逻辑型D.通用型
28、用于打开数据库设计器的命令是()
A.createdatabaseB.modifydatabaseC.setdatabasetoD.usedatabase
29、在SQL查询时,使用WHERE子句指出的是()
A、查询目标B、查询结果C、查询条件D、查询视图
30、执行DIMESIONarray(3,3)后,array(3,3)的值是()。
A)0B)1C).T.D).F.
31、SQL是一种()数据库的语言
A.关系型B.网状型C.层次型D.非关系型
32、在SQL查询时,使用where子句指出的是:
()
A.查询目标B.查询结果C.查询条件D.查询视图
33、VisualFoxpro中的SETRELATION关联操作是一种()
A、逻辑连接B、物理连接C、逻辑排序D、物理排序
34、VisualFoxpro下列表达式中,不正确的是()
A、{^2002-05-0110:
10am}-10B、{^2002-05-01}-date()
C、{^2002-05-01}+date()D、{^2002-05-01}+1000
35、在VisualFoxPro系统中,表中的字段是一种()。
(A)常量(B)函数(C)变量(D)运算符
36、职工表与职工表的索引文件已打开,现要将记录指针定位到第一个工资高于600元的记录上,下列()命令可以实现。
(A)LOCATEFOR工资>600(B)FIND工资>600
(C)FINDFOR工资>600(D)SEEK工资>600
37、在VisualFoxPro的数据工作期窗口,使用SETRELATION命令可以建立两个表之间的关联,这种关联是()。
A)永久性关联(B)永久性关联或临时性关联
C)临时性关联(D)永久性关联和临时性关联
38、数据表文件中有数学、英语、计算机和总分四个数值型字段,要将当前记录的三科成绩汇总后存入总分字段中,应使用命令()。
A)TOTAL数学,英语。
计算机TO总分
B)REPLA总分WITH数学+英语+计算机
C)SUM数学,英语,计算机TO总分
D)REPLA数学+英语+计算机WITH总分
39、建立索引文件时,()字段不能做索引字段。
A、数值型B、字符型C、日期型D、备注型
40、设A=2,B=3,C=4,下列表达式的值为逻辑真的是()
A)12/A+2=B^2
B)3>2*BORA=CANDB<>CORA>B
C)A*B<>C+3
D)A>BANDB<=COR3*A>2*C
41、建立索引文件时()字段不能作为索引字段。
A)数值型(B)字符型
C)日期型(D)备注型
42、不能显示1985年及其以前出生的职工记录的命令是()。
A)LISTFORYEAR(出生日期)<=1985
B)LISTFORSUBSTR(DTOC(出生日期),7,2)<=”85”
C)LISTFORLEFT(DTOC(出生日期),7,2)<=”85”
D)LISTFORRIGHT(DTOC(出生日期),2)<=”85”
43、SQL查询中,用于排序和去掉重复记录的选项子句分别是()。
(A)ORDERBY和JOIN(B)GROUPBY和DISTINCT
(C)ORDERBY和DISTINCT(D)ORDERBY和GROUPBY
44、下列函数中,结果为数值型的是()。
(A)EOF()
(B)SUBS(DTOC(DATE()),2,4)
(C)At(“UF”,”BUFFER”)
(D)ALLT(RIGHT(“ASDFGH'’,3))
45、“项目管理器中”的“数据”选项卡实现对()显示和管理。
(A)数据库、自由表和视图(B)数据库、视图和查询
(c)数据库、表单和查询(D)数据库、自由表和查询
二、读程序
1、CLEAR
STORE0TOA,B,C
FORI=1TO10
DOCASE
CASEMOD(I,2)=0
A=A+I/2
CASEINT(I/3)=I/3
B=B+I/3
OTHERWISE
C=C+1
ENDCASE
ENDFOR
?
A,B,C
(1)程序执行后变量A的值是()
A.13.00B.14.00C.15.00D.16.00
(2)程序执行后变量B的值是()
A.3.00B.4.00C.5.00D.6.00
(3)程序执行后变量C的值是()
A.0B.1C.2D.3
2、设表文件XS.DBF有10条记录,程序如下:
USEXS
GOBOTTOM
N=3
DOWHILEN>=1
DISPLAY
SKIP-1
WAIT
N=N-1
ENDDO
USE
RETURN
1)、程序的功能是()
A)显示所有记录B)分别显示前3个记录
C)显示第3个记录D)分别显示后三个记录
2)、退出循环后,N的值是()
A)0B)1C)3D)4
根据下列程序,完成5、6、7题。
3、阅读下面程序
clear
opendatabaseemplorer
usecompen
scanforrecno()<=10
if姓名=”李强”
loop
endif
?
姓名,实发工资
endscan
use
closedatabase
(1)compen是:
()
A、自由表B、数据库表
C、数据库D、可能是自由表,也可能是数据库表
(2)若数据库有50条记录,则程序的功能是:
()
A、前10条记录中搜寻“李强”的记录B、列出前10条记录
C、每10条记录一屏显示记录,但不显示“李强”的记录
D、列出前10条记录,但不显示“李强”的记录
(3)循环结束后,记录指针指向(D)
A、第1条记录B、最后1条记录
C、第10条记录D、最后1条记录加1
4、
CLEARDOWHILEI<=19
DIMEA(20)J=I+1
P=1DOWHILEJ<=20
DOWHILEP<=20IFA(I)<=A(J)
A(P)=INT(RAND()*100+1)T=A(I)
P=P+1A(I)=A(J)
ENDDOA(J)=T
I=1ENDIF
(接右边→)J=J+1
ENDDO
?
?
A(I)
I=I+1
ENDDO
?
?
A(I)
RETURN
1)、程序完成的功能是将20个数组元素值()
A)排序后按从大到小的顺序输出
B)排序后按从小到大的顺序输出
C)倒序输出
D)按自然顺序输出
2)、将DIMEA(20)改成DIMEA(10)后,()
A)出现“数组重复定义”的错误
B)出现“数组下标越界”的错误
C)程序功能不变,只是输出10个数组元素值
D)程序功能不变,仍然输出20个数组元素值
3)、程序段DOWHILEP<=20
A(P)=INT(RAND()*100+1)
P=P+1
ENDDO
的功能是:
()
A)产生20个0到101之间的随机整数,且存入数组变量A中
B)产生20个1到101之间的随机整数,且存入数组变量A中
C)产生20个1到100之间的随机整数,且存入数组变量A中
D)产生20个0到100之间的随机整数,且存入数组变量A中
5、数据表JY.DBF的内容如下:
Record#借书证号借书日期
1001002/01/99
2000705/04/99
3000602/03/99
4001005/17/99
数据表JYR.DBF的内容如下:
Record#借书证号姓名职称
10006孟小梅教授
20010郑财勇讲师
30007王志军助教
且:
JYR库以借书证号为关键字建立了索引,索引文件为JYR.IDX
程序如下:
SELECT1
USEJYRINDEXJYR
SELECT2
USEJY
SETDEVICETOPRINT
H=1
DOWHILE.NOT.EOF()
TS=DATE()-借书日期
IFTS>80
SELECT1
SEEKB.借书证号
IFTS>100.OR.职称<>’教授’
@H,4SAY姓名+’同志,您借的书已过期,请归还’
H=H+1
ENDIF
SELECT2
ENDIF
SKIP
ENDDO
SETDEVICETOSCREEN
RETURN
(1)设当前系统日期为06/15/99,程序将打印()还书的信息
A.孟小梅、郑财勇各一行B.孟小梅一行、郑财勇两行
C.孟、郑、王各一行D.孟、郑、王三人共五行
(2)高级职称和其它职称借书的最多天数分别是()
A.81天,101天B.100天,80天C.80天,100天D.101天,81天
(3)本程序的功能是:
()
A.查询接书证号B.查询借书日期
C.书未还书者D.查询并打印超期未还书者
6、CLEAR
N=10
FORJ=1TO3
?
STR(J,2)+’)’
?
?
SPACE(6*J)
FORK=1TO3-J+1
?
?
STR(J*K,6)
N=N+2
ENDFOR
?
ENDFOR
RETURN
(1)输出的图形为:
()
A.1)1B.1)123C.1)123D.1)123
2)242)242)242)468
3)3693)33)33)91215
(2)程序结束时,N的值是:
()
A.12B.9C.10D.15
7、CLEAR
M=0
FORX=1TO10
IFMOD(X,3)=0
M=M+X
ENDIF
ENDFOR
?
M
RETURN
1)、该程序的功能是:
求1到10之间()
A.能被3整除数的个数B.能被3整除数的和
C.不能被3整除数的个数D.不能被3整除数的和
2)、该程序执行的结果是:
()
A.3B.10C.18D.37
8.*A1.prg*
M=1PRIVATEM
N=2M=3
DOB1N=4
?
’M=”,M,”N=”,NRETURN
RETURN
(1)执行以上程序后,M=()
A、3B、1C、2D、4
(2)执行以上程序后,N=()
A、3B、1C、2D、4
9、表JB1.DBF中记录如下:
记录号学号姓名性别专业
1200204张晓梅女计算机应用
2200205王刚男应用化学
3200206邓群女热力工程
4200207李大为男应用数学
表JB2.DBF中记录如下:
记录号学号上机笔试
12002049087
22002056356
32002069095
42002074560
SETTALKOFF
SETDELEON
SELE2
USEJB2
SELE1
USEJB1
INDEXON学号TOXH1
JOINWITHBTOJB3FOR学号=A->学号
USEJB3
DELEALLFOR上机<60.OR.笔试<60
LIST
PACK
GO2
XH=学号
XM=姓名
?
XH,XM
USE
RETU
(1)程序中LIST命令共显示的记录个数是()
A、4B、3C、2D、1
(2)程序中?
XH,XM命令显示的值是()
A、200204张晓梅B、200205王刚
C、200206邓群D、200207李大为
10.阅读程序:
CLEA
BM=SPACE(10)
@5,10SAY“请输入表名:
”GETBM
READ
BM=ALLTRIM(BM)
IFFILE(“&BM..DBF”)
USE&BM
BROWSENOMODI
ELSE
WAIT“文件不存在!
”WINDOWNOWAIT
ENDIF
USE
RETURN
1)、程序的功能是()
A)浏览任意一个打开的表文件
B)修改任意一个打开的表文件
C)浏览指定表文件BM
D)修改指定表文件BM
2)、函数FILE(“&BM..DBF”)的功能是()
A)测试指定的文件的类型正确否
B)指定文件类型为.DBF
C)测试指定的文件存在否
D)指定文件为&BM..DBF
3)、将语句USE&BM改写为USE(BM),程序()
A)程序不能执行B)程序功能不变
C)该命令将关闭表文件D)以上三种说法都不对
11、&&MAIN.PRG&&P1.PRG
X1=1PARAW1,W2
X2=2PRIVATEW1
DOP1WITHX1,X2W1=W1*3
?
’X1=’+STR(X1,1)W2=W2*4
?
?
’X2=’+STR(X2,1)RETURN
X1=1
X2=2
DOP1WITHX1,X1+X2
?
’X1=’+STR(X1,1)
?
?
’X2=’+STR(X2,1)
RETURN
(1)第一次显示X1,X2的值是()
A.1,8B.3,8C.1,1D.8,8
(2)第二次显示X1,X2的值是()
A.1,2B.3,1C.3,2D.1,3
12、有图书数据表TS和订书单表DSD如下:
TS:
(书号:
C3,单价:
N6.2书名C10)
书号单价书名
00112.0计算机应用
00210.0化学
00315.0分析化学
DSD:
(班级:
C6,书号:
C3,数量:
N3.0,款项:
N7.2)
记录号班级书号数量款项
1化95.4001470.00
2数94.3002740.00
3物96.4003670.00
4生95.4002470.00
5地94.3001670.00
6物94.3002670.00
7数94.3001740.00
8化95.4003470.00
9数94.3003740.00
程序:
CLEAALL
SELE1
USETsALIASSHU
INDEXon书号tagTSSH
SELE2
USEdsdaliasshdn
SETRELATO书号INTOSHU
update shdn set 款项=数量*shu.单价whereshdn.书号=shu.书号
sele班级,dsd.书号,ts.书名,数量,款项fromdsd.dbf,ts.dbforderby款项 wherets.书号=dsd.书号intocursoraaa
LIST
DOWHIL.T.
ACCE“输入班级名(输入0退出)”TOBJ
IFBJ=’0’
EXIT
ENDI
ACCE“输入书号”TOSH
LOCATFOR书号=SH
IFBOF()
EXIT
ENDI
?
班级+”班长,请来领<<”+TRIM(书名)+”>>并交款”+str(款项)+”元。
”
ENDD
cleaall
RETURN
1)、dowhile循环中locate操作的表是:
()
A)数据表TSB)数据表DSD
C)系统临时表aaaD)系统临时表cursoraaa
2)、运行时输入”数94.3”,并输入书号“003”,则输出为:
()
A)数94.3班长,请来领〈〈化学〉〉,并交款740元
B)化95.4班长,请来领〈〈分析化学〉〉,并交款705元
C)物96.4班长,请来领〈〈分析化学〉〉,并交款1005元
D)输入错误,没有输出
13、阅读下面程序:
CLEAR
OPENDATABASEemplorer
USEcompen
SCANFORRECNO()<=10
IF姓名=’李强’
LOOP
ENDIF
?
姓名,实发工资
ENDSCAN
USE
CLOSEDATABASE
(1)compen是:
()
A.自由表B.数据库表 C.数据库
D.可能是自由表,也可能是数据库表
(2)若数据库有50条记录,则程序的功能是:
()
A.前10条记录中搜索“李强”的记录B.列出前10条记录
C.每10条记录一屏显示记录,但不显示“李强”的记录
D.列出前10条记录,但是不显示“李强”的记录
(3)循环结束后,指针指向()
A.第1条B.最后一条C.第10条D.最后1条记录加1
14、有以下三段程序
*Main.PRG*SUB.PRG
K1=10PRIVK1
K2=20K1=K2+10
DOSuBK2=K1+10
?
K1,K2&