VFP考试题型答案.docx
- 文档编号:14431098
- 上传时间:2023-06-23
- 格式:DOCX
- 页数:21
- 大小:95.41KB
VFP考试题型答案.docx
《VFP考试题型答案.docx》由会员分享,可在线阅读,更多相关《VFP考试题型答案.docx(21页珍藏版)》请在冰点文库上搜索。
VFP考试题型答案
VFP程序考试题型
一、表单操作
1.按要求在考生文件夹下完成下列操作:
1)按下图设计一表单文件formcalc1。
设置表单(名称为form1)标题为“人民币兑换美元”。
2)表单中添加两个标签,设置第一个标签(label1)标题为“输入人民币”,第二个标签(label2)标题为“兑换为美元”。
3)添加两个文本框(名称分别为text1和text2),显示美元的文本框(text2)设为只读。
4)表单中添加一个命令按钮,其(名称为command1)的标题为“兑换”,编写“兑换”命令按钮的代码,要求运行表单时,在文本框(text1)中输入人民币后,单击“兑换”命令按钮,算出兑换的的美元(人民币兑换成美元的比例为:
1美元=7元人民币),在 文本框(text2)中显示结果。
操作完成后将操作结果保存在考生文件夹下。
command1的click代码:
thisform.text2.value=val(thisform.text1.value)/8
2.按要求在考生文件夹下完成下列操作:
1)按下图设计一表单文件formdbca12。
设置表单(名称为form1)标题为“人数统计”。
2)在数据环境中添加ygb.dbf。
3)表单中添加两个文本框,(名称分别为text1和text2),显示人数的文本框设为“只读”。
4)表单中添加一个命令按钮(名称为command1)的标题为“统计人数”,编写此命令按钮的代码,要求运行表单时,在在文本框(text1)中输入性别“男”(或“女”),统计文本框(text1)指定性别的人数.将结果显示在文本框(text2)中。
操作完成后将操作结果保存在考生文件夹下。
代码:
countfor性别=allt(thisform.text1.value)tox
thisform.text2.value=x
知识点:
VFP部分/表单设计
3、按要求在考生文件夹下完成下列操作:
1)按下图设计一表单文件formdbca19。
设置表单(名称为form1)标题为“人数统计”。
2)在数据环境中添加student.dbf。
3)表单中添加一个列表框(名称为list1),列表框中有4个选项:
“2005会计一”,“2005会计二”,“2005会计三”,“2005会计四”。
在表单中添加一个标签(名称为label1),标题为”选择班级名称”。
表单中添加一个文本框(名称为text1),此文本框设为只读。
4)表单中添加一个命令按钮(名称为command1)的标题为“统计人数”,编写此命令按钮的代码,要求运行表单时,在列表框选择班级,按列表框指定班级统计人数,将结果显示在文本框(text1)中。
操作完成后将操作结果保存在考生文件夹下。
代码:
countfor班级=thisform.list1.valuetox
thisform.text2.value=x
3.按要求在考生文件夹下完成下列操作:
1)按下图设计一表单文件formdbca20。
设置表单(名称为form1)标题为“按班级统计学生平均分”。
2)在数据环境中添加student.dbf。
3)表单中添加一个组合框(名称为Combo1),组合框中有4个选项:
“2005会计一”,“2005会计二”,“2005会计三”,“2005会计四”。
在表单中添加一个标签(名称为label1),标题为”选择班级”。
在表单中添加一个文本框(名称为text1),此文本框设为只读。
4)表单中添加一个命令按钮(名称为command1)的标题为“统计平均分”,编写此命令按钮的代码,要求运行表单时,在组合框选择班级,按组合框指定班级统计平均分,将结果显示在文本框(text1)中。
操作完成后将操作结果保存在考生文件夹下。
代码:
settalkoff
aver成绩for班级=bo1.valuetox
thisform.text2.value=x
4.按要求在考生文件夹下完成下列操作:
1)按下图设计一表单文件formdbup37。
设置表单(名称为form1)标题为“修改员工信息”。
2)在数据环境中添加ygb.dbf。
3)表单中添加三个标签和三个文本框,分别用于显示当前记录的员工编号、姓名和联系电话,且将显示员工编号的文本框设为只读。
4)表单中添加二个命令按钮,第一个命令按钮(名称为command1)的标题为“上一条”,第二个命令按钮(名称为command1)的标题为“下一条”。
编写这两个命令按钮的代码,要求运行表单时,单击“上一条”命令按钮(command1)时,记录指针移动到上一条记录,单击“下一条”命令按钮(command1)时,记录指针移动到下一条记录。
然后在三个文本框(text1、text2和text3)中分别显示当前记录的学号、姓名和地址。
操作完成后将操作结果保存在考生文件夹下。
command1代码:
skip-1
thisform.refresh
command1代码:
skip
thisform.refresh
5.按要求在考生文件夹下完成下列操作:
1)按下图设计一表单文件formlogin41。
设置表单(名称为form1)标题为“系统登陆”。
2)设置“工资管理系统”标签(label1)字号设为20,字的颜色为红色。
3)要求在运行表单时,向输入密码的文本框(text2)中输入字符,回显字符显示的是“*”。
4)编写“退出”命令按钮(command2)的代码,要求运行表单时,单击“退出”命令按钮时,关闭表单。
操作完成后将操作结果保存在考生文件夹下。
command2代码:
thisform.release
6.在考生文件夹下完成如下操作:
设计名为formfont102的表单(控件名为form1,文件名为formfont102)。
表单的标题设为"设置字体格式"。
表单中有一个标签(名称为Label1,标题为“选择字体”),一个组合框(名称为Combo1)、一个文本框(名称为Text1)和两个命令按钮"设置"(名称为Command1)和"退出"(名称为Command2)。
文本框的字体大小设为16
运行表单时,组合框中有三个条目"宋体"、"黑体"、"隶书"可供选择,在组合框中选择字体后,如果单击"设置"命令按钮,按组合框选定的字体设置文本框中内容的字体。
单击"退出"按钮关闭表单。
操作完成后将操作结果保存在考生文件夹下。
command1代码:
thisform.text1.fontname=bo1.value
command2代码:
thisform.release
7.在考生文件夹下完成如下操作:
1)设计名为formfont105的表单(控件名为form1,文件名为formfont105)。
表单的标题设为"设置字体格式"。
2)表单中添加一个列表框(名称为listbox1)、列表框中有三个条目"宋体"、"黑体"、"隶书"可供选择。
3)表单中添加一个标签(名称为label1),标题为“湖南财经高等专科学校”,同时设置此标签字号为20,字的颜色为红色。
4)表单中添加两个命令按钮"设置"(名称为Command1)和"退出"(名称为Command2)。
编写其代码,要求运行表单时,在列表框中选择字体后,如果单击"设置"命令按钮,按列表框选定的字体设置标签中内容的字体。
单击"退出"按钮关闭表单。
操作完成后将操作结果保存在考生文件夹下。
command1代码:
thisform.label1.fontname=thisform.list1.value
command2代码:
thisform.release
二、程序填空
1、程序功能:
求1~50所有整数的立方和。
SETTALKOFF
CLEAR
(1)
X=1
DOWHILEX<=30
S=S+X^3
X=
(2)
ENDDO
?
S
RETURN
答案:
(1)S=0
(2)X+1
知识点:
求和
2、计算分段函数的值:
当x>5时,y=x-5;当x<=5时,y=x2+19
SETTALKOFF
INPUT“请输入X的值:
”TOX
IFX>3
Y=
(1)
ELSE
Y=X*X+19
(2)
?
Y
RETURN
答案:
(1)X-5
(2)ENDIF
知识点:
双分支结构
3、计算分段函数的值:
当x>0时,y=15;当x<=0时,y=-5;当x=0时,y=0
SETTALKOFF
INPUT“请输入X的值:
”TOX
DOCASE
CASEX>0
Y=
(1)
CASEX<0
Y=-5
OTHERWISE
Y=0
ENDCASE
?
”Y=”,
RETURN
答案:
(1)15
(2)Y
知识点:
多分支结构
4、设eee.dbf为职工数据表,姓名为一个字段名,查找名为“王林”的职工,若找到显示该员工信息,否则显示“查无此人”信息。
SETTALKOFF
(1)
LOCATEFOR姓名=”王林”
IF
(2)
DISP
ELSE
?
”查无此人”
ENDIF
USE
SETTALKON
答案:
(1)USEEEE
(2)FOUND()
知识点:
记录查找,双分支
5、下面程序将“春光明媚”先纵向显示出来然后再横向显示“明媚春光”请填空完成该程序:
Settalkoff
Clear
STORE“春光明媚”TOXY
N=1
DOWHILEN<8
?
SUBSTR(
(1))
N=N+2
ENDDO
?
SUBSTR(
(2))
?
?
SUBSTR(XY,1,4)
Return
答案:
(1)XY,N,2
(2)XY,5,4
知识点:
单循环结构
6、输入一个三位整数,将其反向输出。
如输入123,输出321。
settalkoff
input "请输入一个三位数"to
(1)
(2)=100*mod(a,10)+10*mod(int(a/10),10)+mod(int(a/100),10)
?
b
return
答案:
(1)a
(2)b
知识点:
顺序结构
7、子程序调用
主程序:
t1.prg
SETTALKOFF
STORE′NH′TOk1,k2
DOt2
?
k1+k2屏幕上显示的结果是
(1)
RETURN
子程序:
t2.prg
PRIVATEk1
k1=k2+″100″
?
k1屏幕上显示的结果是
(2)
RETURN
答案:
(1)NHNH
(2)NH100
知识点:
子程序调用
7、子程序调用
主程序:
z.prg
SETTALKOFF
STORE4TOy1,y2,y3
y1=y1+1
?
y1+y2+y3&&屏幕上显示的结果是
(1)
DOz1
?
y1+y2+y3&&屏幕上显示的结果是
(2)
RETURN
子程序:
z1.prg
y2=y2+1
DOz2
y1=y1+1
RETURN
子程序:
z2.prg
y3=y3+1
RETURNTOMASTER
答案:
(1)13
(2)15
知识点:
子程序调用
8、下面的程序实现了多次在“aaa.dbf”表中查找记录的操作。
请在建立了aaa.dbf表的基础上,任意输入一位员工的“编号”,若查找到相应的记录则显示,否则给出提示“无此人!
”;根据提示输入“N”或“n”则结束程序的运行。
SETTALKOFF
CLEAR
USE aaa.dbf
DOWHILE.T.
CLEAR
ACCEPT"请输入员工编号:
"TOZHGNO
LOCATEFOR编号=ZHGNO
IF
(1)
DISPLAY编号,姓名,部门代号,职称,基本工资
ELSE
?
"无此人!
"
ENDIF
WAIT"继续查询?
(Y/N):
"TOP
IFUPPER(P)<>"
(2)"
USE
EXIT
ENDIF
ENDDO
SETTALKON
RETURN
答案:
(1)NOTEOF()
(2)Y
知识点:
表的操作
9、下面程序输出如图所示的图形,请将程序补充完整。
*******
*****
***
*
Settalkoff
clear
FORN=4TO1STEP-1
?
(1)(3-N)
FORM=1TO2*N-1
?
?
(2)
ENDFOR
ENDFOR
Settalkon
return
答案:
(1)SPACE
(2)"*"
知识点:
双循环结构
三、编程题(要求从三大类型的程序中各选其一,即不能选两个同类型的程序题)
(一)求和类型的程序
1、编程计算s=1+1/3+1/5+…+1/49。
参考答案:
clear
s=0
fori=1to49step2
s=s+1/i
endf
?
s
retu
2、编程计算100到1000之间能被4除余1的所有数之和。
参考答案:
clear
s=0
fori=100to1000
ifi%4=1
s=s+i
endi
endf
?
s
retu
3、计算100到500中所有素数的和。
(所谓素数是指除了1和它本身外,没有任何因子被该数整除)
参考答案:
clea
s=0
fori=100to500
forj=2toi-1
ifi%j=0
exit
endif
endf
ifj>=i
s=s+i
endi
endf
?
s
retu
编程计算1/4!
+1/8!
+1/10!
clea&&主程序
?
1/fac(4)+1/fac(8)+1/fac(10)
retu
funcfac&&fac创建一个求阶乘的函数
paran
s=1
fori=1ton
s=s*i
endfor
returns
4、求所有五位数中,千位数字等于个位数字的数之和。
clear
s=0
fori=10000to99999
ifi%10=int(i/10000)
s=s+i
endif
endf
?
s
retu
(二)统计个数的类型
1、统计100到1000中能被5或9整除的所有数的个数。
clea
s=0
fori=100to1000
ifi%5=0ori%9=0
s=s+1
endif
endfor
?
s
retu
答案:
236
2、求四位数中所有“回文数”的个数。
(所谓“回文数”,是指该数从左往右念与从右往左念相同,例如:
1221,3223等)
clea
s=0
fori=1000to9000
a=int(i/1000)
b=int((i%1000)/100)
c=int((i%100)/10)
d=i%10
ifa=dandb=c
s=s+1
endif
endfor
?
s
retu
答案:
80
3、统计所有五位数中万位数字大于等于个位数字的数的个数。
clea
s=0
fori=10000to99999
a=int(i/10000)
b=i%10
ifa>=b
s=s+1
endif
endfor
?
s
retu
(三)其他类型
1、已知数列的前三个数分别为1,1,2,以后每个数为前三个数之和,求第20项的值及前20项之和
clea
dimea(20)
a
(1)=1
a
(2)=1
a(3)=2
s=a
(1)+a
(2)+a(3)
fori=4to20
a(i)=a(i-1)+a(i-2)+a(i-3)
s=s+a(i)
endfor
?
a(20),s
return
2、已知s=1*2*3*…*n,当s超过300000时的n值。
clea
i=1
s=1
dowhiles<300000
s=s*i
i=i+1
enddo
?
i-1
return
结果:
9
3、有50个学生去买小吃,一共花费100元。
其中大学生每人3元,中学生每人2元,小学生每人1元,求这种分配方法一共有多少种。
clea
s=0
fora=1to50
forb=1to50
ifa*3+b*2+50-a-b=100
s=s+1
endif
endfor
endfor
?
s
retu
结果:
24
4、求和s=1!
+4!
+7!
+……+(3k+1)!
(其中k>=0),直到s>180000为止,计算此时k的值。
clea
s=0
k=0
dowhiles<180000
t=1
fori=1to3*k+1
t=t*i
endfor
s=s+t
k=k+1
enddo
?
s
retu
5、求出1798和1960的最大公约数。
settalkoff
clear
a=1798
b=1960
ford=2toa
ifmod(a,d)=0andmod(b,d)=0
c=d
endif
endfor
?
c
settalkon
return
6、计算133^10的最后4位数分别是多少?
settalkoff
clear
s=1
fori=1to2
s=s*133%10000
endfor
?
s
settalkon
return
结果:
7449
7、一球从200m高度自由落下,每次落地后反跳回原高度的一半,再落下。
求它在第10次落地时,共经过多少米?
clear
h=200
s=200
fori=1to9
h=h/2
s=s+2*h
endfor
?
s
retu
结果:
599.2188
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VFP 考试 题型 答案