VF的期末考试试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
试卷编号:8266
所属语言:Visual Foxpro
试卷方案:VF_1004261709
试卷总分:100分
共有题型:8种
━━━━━━━━━━━━━━
一、填空 共5题 (共计10分)
━━━━━━━━━━━━━━
第1题 (2.0分) 题号:1190
关系是具有相同性质的【1】的集合.
答案:
=======(答案1)=======
元组
=========或=========
纪录
第2题 (2.0分) 题号:1547
在Visual Foxpro中,建立程序文件的命令是【1】.
答案:
=======(答案1)=======
modify command
第3题 (2.0分) 题号:1244
如果要为控件设置焦点,则控件的Enabled属性和【1】属性必须为.T..
答案:
=======(答案1)=======
Visible
第4题 (2.0分) 题号:1134
菜单程序组装在项目管理器【1】选项卡中.
答案:
=======(答案1)=======
其他
第5题 (2.0分) 题号:879
SELECT命令中,表示条件表达式用WHERE子句,分组用【1】子句,排序用
ORDER BY子句.
答案:
=======(答案1)=======
GROUP BY
━━━━━━━━━━━━━━
二、判断 共9题 (共计9分)
━━━━━━━━━━━━━━
第1题 (1.0分) 题号:1108
查询设计器中不可以对数据进行统计.
答案:N
第2题 (1.0分) 题号:972
执行?IIF(5>8,2,3)后的结果为2.
答案:N
第3题 (1.0分) 题号:588
Visual FoxPro的关系运算符包括<、>、=、==、<>(#或!=)、<=和>=共七种.
答案:Y
第4题 (1.0分) 题号:1135
使用SORT命令排序表的缺点是较费时与浪费磁盘空间.
答案:Y
第5题 (1.0分) 题号:604
VFP中数据库文件的扩展名为.DBF,表文件的扩展名为.DBC.
答案:N
第6题 (1.0分) 题号:991
Visual Foxpro工作区号的大小不能说明同时打开数据表的先后顺序.
答案:Y
第7题 (1.0分) 题号:1160
在Visual FoxPro中,命令程序的基本结构包括顺序结构、选择结构、
循环结构和自定义函数与过程.
答案:N
第8题 (1.0分) 题号:1158
?LEFT("程序设计",2)的返回值是"程序".
答案:N
第9题 (1.0分) 题号:1081
在Visual FoxPro中,要访问数组中的每一个元素时,
通过FOR EACH...ENDFOR语句也能实现.
答案:Y
━━━━━━━━━━━━━━━━━
三、单项选择 共10题 (共计10分)
━━━━━━━━━━━━━━━━━
第1题 (1.0分) 题号:3598
对数据表的结构进行操作,是在()环境下完成的.
A:表设计器
B:表向导
C:表浏览器
D:表编辑器
答案:A
第2题 (1.0分) 题号:3938
打开"表单设计器"后,系统菜单中增加的菜单项是().
A:表单
B:菜单
C:屏幕
D:数据库
答案:A
第3题 (1.0分) 题号:3076
seek( )函数返回的值为()型.
A:字符
B:数值
C:日期
D:逻辑
答案:D
第4题 (1.0分) 题号:3095
Visual F
oxPro中,将当前索引文件中的"姓名"设置为当前索引,
应输入的命令是().
A:SET ORDER 姓名
B:SET 姓名
C:SET ORDER TO TAG 姓名
D:SET INDEX TO 姓名
答案:C
第5题 (1.0分) 题号:3979
在Visual FoxPro中,表单(Form)是指().
A:数据库中各个表的清单
B:一个表中各个记录的清单
C:数据库查询的列表
D:窗口界面
答案:D
第6题 (1.0分) 题号:3712
在VFP中,使用AVERAGE命令时,表文件需要().
A:排序
B:建立索引
C:排序或建立索引
D:都不需要
答案:D
第7题 (1.0分) 题号:3899
在查询设计器中,可以指定是否重复记录的是()选项卡.
A:字段
B:杂项
C:联接
D:筛选
答案:B
第8题 (1.0分) 题号:3780
主程序是整个应用系统的入口点,其至少拥有以下功能().
A:初始化环境
B:初始化环境、显示初始用户界面
C:初始化环境、显示初始用户界面、控制事件循环
D:初始化环境、显示初始用户界面、控制事件循环、退出时恢复环境
答案:D
第9题 (1.0分) 题号:3826
使用ALLTRIM( )函数可以删除所给表达式的().
A:前导空格
B:尾部空格
C:前后空格
D:所有空格
答案:C
第10题 (1.0分) 题号:3210
若要在一个对象创建之时发生某事件,则该事件的代码应编写在()事件中.
A:Click
B:Init
C:load
D:keypress
答案:B
━━━━━━━━━━━━━━━━
四、多项选择 共5题 (共计10分)
━━━━━━━━━━━━━━━━
第1题 (2.0分) 题号:406
以下哪些是程序设计的基本结构().
A:分支
B:选通
C:循环
D:顺序
答案:ACD
第2题 (2.0分) 题号:353
属于记录查找的命令有().
A:TOTAL
B:LOCATE
C:SEEK
D:CONTINUE
答案:BCD
第3题 (2.0分) 题号:350
在Visual Foxpro系统中,能移动记录指针的命令有().
A:LIST
B:CONT
C:GO
D:SKIP
答案:ABCD
第4题 (2.0分) 题号:254
以下表达式中,合法的是().
A:8-3=5
B:[8]+[3]>10
C:AT("ad","xyadvanad")-len("adadad")
D:.not. (a=b) .and. a-b>0 .or. b=0
答案:ACD
第5题 (2.0分) 题号:252
Visual Foxpro中的表达式有().
A:算术表达式
B:字符表达式
C:关系表达式
D:逻辑表达式
答案:ABCD
━━━━━━━━━━━━━━━━
五、程序填空 共3题 (共计15分)
━━━━━━━━━━━━━━━━
第1题 (5.0分) 题号:814
*-------------------------------------------------------
*【程序填空】
*-------------------------------------------------------
*功能:设表AAA.DBF包括学号、姓名、成绩,下列程序完成打印
* 最高成绩记录的学号、姓名、成绩。
* 请在【】处添上适当的内容,使程序完整。
*-------------------------------------------------------
SET TALK OFF
USE AAA.DBF
NN=1
MAX1=成
绩
***********SPACE**********
DO WHILE 【?】
IF 成绩>MAX1
MAX1=成绩
NN=RECNO()
ENDIF
***********SPACE**********
【?】
ENDDO
***********SPACE**********
【?】
?"最高成绩:学号="+学号+",姓名="+姓名+",成绩="
??成绩
USE
SET TALK ON
RETURN
答案:
=======(答案1)=======
NOT EOF()
=========或=========
!EOF()
=========或=========
.NOT. EOF()
=======(答案2)=======
SKIP
=========或=========
SKIP 1
=======(答案3)=======
GO NN
第2题 (5.0分) 题号:866
*-------------------------------------------------------
*【程序填空】
*-------------------------------------------------------
*功能: 求出二维数组周边元素之和。
* 请在【】处添上适当的内容,使程序完整。
*-------------------------------------------------------
SET TALK OFF
clear
dime aa(3,3)
m=1
for i=1 to 3
for j=1 to 3
aa(i,j)=m
m=m+1
endf
endf
***********SPACE**********
s=【?】
***********SPACE**********
for i=1 to 【?】
s=s+aa(i,1)+aa(i,3)
endf
s=s+aa(1,2)+aa(3,2)
***********SPACE**********
? 's='【?】 s
set talk on
canc
答案:
=======(答案1)=======
0
=======(答案2)=======
3
=======(答案3)=======
,
第3题 (5.0分) 题号:811
*-------------------------------------------------------
*【程序填空】
*-------------------------------------------------------
*功能:通过循环程序,输出"九九"表
*
*1X1= 1
*1X2= 2 2X2= 4
*1X3= 3 2X3= 6 3X3= 9
*1X4= 4 2X4= 8 3X4=12 4X4=16
*1X5= 5 2X5=10 3X5=15 4X5=20 5X5=25
*1X6= 6 2X6=12 3X6=18 4X6=24 5X6=30 6X6=36
*1X7= 7 2X7=14 3X7=21 4X7=28 5X7=35 6X7=42 7X7=49
*1X8= 8 2X8=16 3X8=24 4X8=32 5X8=40 6X8=48 7X8=56 8X8=64
*1X9= 9 2X9=18 3X9=27 4X9=36 5X9=45 6X9=54 7X9=63 8X9=72 9X9=81
* 请在【】处添上适当的内容,使程序完整。
*-------------------------------------------------------
SET TALK OFF
FOR N=1 TO 9
***********SPACE**********
【?】
***********SPACE**********
【?】
***********SPACE**********
?? STR(M,1)+ "×"+STR(N,1)+ "="+【?】+ " "
ENDFOR
ENDFOR
SET TALK ON
RETURN
答案:
=======(答案1)=======
?
=======(答案2)=======
FOR M=1 TO N
=======(答案3)=======
STR( N * M )
=========或=========
STR (M * N)
=========或=========
STR( N * M )
=========或=========
STR(M * N)
━━━━━━━━━━━━━━━━
六、程序改错 共3题 (共计15分)
━━━━━━━━━━━━━━━━
第1题 (5.0分) 题号:780
*-------------------------------------------------------
*【程序改错】
*-------------------------------------------------------
*题目:用户选择菜单中的功能序号,程序将根据序号对数据表
* XSDB.DBF进行对应的操作。
*-------------------------------------------------------
*注意:不可以增加或删除程序行
,也不可以更改程序的结构。
*-------------------------------------------------------
SET TALK OFF
USE XSDB
DO WHILE .T.
?" 1-追加记录 2-修改记录 3-显示记录 0-结束程序"
INPUT "请选择(1,2,3,0):" TO ANS
***********FOUND**********
IF ANS>=0.AND.ANS<=3
WAIT "输入错误,按任意键重新输入!"
LOOP
ENDIF
DO CASE
CASE ANS=1
APPE
CASE ANS=2
BROW
CASE ANS=3
LIST
OTHERWISE
***********FOUND**********
?"结束!"
ENDCASE
ENDDO
USE
SET TALK ON
RETU
答案:
=======(答案1)=======
IF ANS<0 .OR. ANS>3
=========或=========
IF ANS>3 .OR. ANS<0
=========或=========
IF ANS<0 OR ANS>3
=========或=========
IF ANS>3 OR ANS<0
=========或=========
IF 0>ANS OR 3
IF 3
=======(答案2)=======
Quit
=========或=========
Exit
第2题 (5.0分) 题号:809
*-------------------------------------------------------
*【程序改错】
*-------------------------------------------------------
*题目:分别统计字符串中大写字母和小写字母的个数。
* 例如, 给字符串 s 输入:AAaaBBb123CCccccd,
* 则应输出结果:upper = 6, lower = 8。
*-------------------------------------------------------
*注意:不可以增加或删除程序行,也不可以更改程序的结构。
*-------------------------------------------------------
set talk off
clear
s='AAaaBBb123CCccccd'
stor 0 to l,u
***********FOUND**********
for i=0 to len(s)-1
if isup(subs(s,i,1))
u=u+1
endi
if islow( subs(s,i,1))
***********FOUND**********
i=i+1
endi
***********FOUND**********
enddo
? "upper=",u,"lower=",l
SET TALK ON
RETU
答案:
=======(答案1)=======
for i=1 to len(s)
=======(答案2)=======
l= l + 1
=======(答案3)=======
endfor
=========或=========
endf
第3题 (5.0分) 题号:829
*-------------------------------------------------------
*【程序改错】
*-------------------------------------------------------
*题目:已有两个数据库文件ZC.DBF和ZG.DBF。给定程序MODI1.PRG
* 的功能是:将ZC.DBF和ZG.DBF两个数据库文件的相应记录连
* 在一起存入新数据库文件JJ.DBF中,对该数据库文件按职称
* 分类汇总实发工资和奖金,再将汇总后的结果复制到ABC.DBF
* 数据库文件中,并使该文件只包含职称、奖金和实发工资三
* 个字段。
*-------------------------------------------------------
*注意:不可以增加或删除程序行,也不可以更改程序的结构。
*-------------------------------------------------------
SET TALK OFF
SET SAFETY OFF
SELECT 1
USE ZG
SELECT 2
USE ZC
***********FOUND**********
JOIN WITH A TO JJ
USE JJ
***********FOUND**********
INDEX ON 职工号 TO ZCHZ
TOTAL ON 职称 TO DDD FIELDS 实发工资,奖金
USE
DDD
***********FOUND**********
COPY TO ABC FOR 职称,奖金,实发工资
USE ABC
LIST
CLOSE DATABASE
SET TALK ON
RETURN
答案:
=======(答案1)=======
JOIN WITH A TO JJ FOR 职工号=A->职工号
=========或=========
JOIN WITH ZG TO JJ FOR 职工号=ZG->职工号
=========或=========
JOIN WITH A TO JJ FOR 职工号==A
=======(答案2)=======
INDE ON 职称 TO ZCHZ
=======(答案3)=======
COPY TO ABC FIEL 职称,奖金,实发工资
=========或=========
COPY FIEL 职称,奖金,实发工资 TO ABC
━━━━━━━━━━━━━━━━
七、程序设计 共2题 (共计10分)
━━━━━━━━━━━━━━━━
第1题 (5.0分) 题号:726
*-------------------------------------------------------
*【程序设计】
*-------------------------------------------------------
*题目:编程已知下列各项:a1=1,a2=1/(1+a1),a3=1/(1+a2),
* ......an=1/(1+a(n-1))。当n=10时,计算如下表达式的值
* s=a1+a2+...+a10。
* 将结果存入变量OUT中。
* 请按照题目要求,在下面编写程序代码。
*-------------------------------------------------------
SET TALK ON
SET LOGERRORS ON
OUT=-1
**********Program**********
********** End **********
DO YZJ WITH OUT
SET LOGERRORS OFF
SET TALK OFF
答案:----------------------
a=1
s=1
for i=1 to 9
a=1.0/(1+a)
s=s+a
endfor
out=a
? out
----------------------
第2题 (5.0分) 题号:674
*-------------------------------------------------------
*【程序设计】
*-------------------------------------------------------
*题目:编程求P=1x(1x2)x(1x2x3)x … x(1x2x … xN),N由键盘输入。
* 将结果存入变量OUT中。
* 请按照题目要求,在下面编写程序代码。
*-------------------------------------------------------
SET TALK OFF
SET LOGERRORS ON
INPUT "请任意输入一个数字:" TO N
?FUN(N)
YZJ()
SET TALK ON
CANC
FUNCTION FUN(N)
OUT=-1
**********Program**********
********** End **********
RETURN OUT
FUNCTION YZJ()
USE IN
LOCA FOR TIHAO=3
IF FOUND()
N=N1
O=FUN(N)
DO YZJ3 WITH O
ELSE
?"考试输入文件错误,请重新配置考试环境"
ENDIF
USE
RETURN
答案:----------------------
p=1
for i=1 to n
q=1
for j=1 to i
q=q*j
endfor
p=p*q
endfor
OUT=p
----------------------
━━━━━━━━━━━━━━━━━━
八、VF窗体设计 共2题 (共计21分)
━━━━━━━━━━━━━━━━━━
第1题 (11.0分) 题号:99
一、基本操作题
1、在考生文件夹下打开数据库'课本',将自由表shu添加到数据库'课本'中。
2、将shu中的记录拷贝到新表ben中。
3、使用报表向导建立报表my。报表显示shu中的全部字段,
无分组记录,样式为'简报式',列数为2,方向为'横向'。
按'价格'升序排序,报表标题为'书籍浏览',并保存到考生目录下,文件
名称为shu。
二、简单应用题
1、修改表单Form1,标题为'系统时间'。完成如下要求:
表单上创建一命令按钮,标题为'显示日期',名称为:'Command1';
一个标签控件(Label1)。单击命令按钮,在标签上显示当前系统时间,
显示格式为:yyyy年m月dd日。
如果当前月份为一月到九月,如3月,则显示为'3月',不显示为'03月'。
显示示例:如果系统时间为2004-04-08,则标签显示为'2004年4月08日'。
第2题 (10.0分) 题号:46
---------------------------------------------------------------------
运行状态(如图1)
编辑状态(如图2)
制作如图所示表单。
---------------------------------------------------------------------
设置:
1、设置表单名称为“Form1”,标题为“Form1”。
2、在窗体内添加4个Label控件,名称分别为:Label1、Label2、Label3、Label4。
添加3个TextBox控件,名称分别为:Text1、Text2、Text3。
添加1个CommandButton控件,名称为:Command1。
3、设置Label1的标签内容为“输入两个数:”,字体为:幼圆、12号字。
设置Label2的标签内容为“m=”,字体为:幼圆、12号字。
设置Label3的标签内容为“n=”,字体为:幼圆、12号字。
设置Label4的标签内容为“两数的最小公倍数为:”,字体为:幼圆、12号字。