VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx

上传人:b****2 文档编号:2874951 上传时间:2023-05-04 格式:DOCX 页数:25 大小:22.55KB
下载 相关 举报
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第1页
第1页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第2页
第2页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第3页
第3页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第4页
第4页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第5页
第5页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第6页
第6页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第7页
第7页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第8页
第8页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第9页
第9页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第10页
第10页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第11页
第11页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第12页
第12页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第13页
第13页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第14页
第14页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第15页
第15页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第16页
第16页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第17页
第17页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第18页
第18页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第19页
第19页 / 共25页
VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx_第20页
第20页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx

《VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx》由会员分享,可在线阅读,更多相关《VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx(25页珍藏版)》请在冰点文库上搜索。

VisualFoxpro实用教程课本及辅导教材参考答案第三版新.docx

VisualFoxpro实用教程课本及辅导教材参考答案第三版新

VisualFoxpro实用教程课本(第三版)及实验教材部分课后题答案

说明:

1。

本材料仅供学习参考,不代表任何考试题目意向;

2。

所给定的题目答案只是常规解法,不一定是最佳答案。

刘乃文

第一章:

课本习题一P10

一.单选题1.B2.A3.C4.D5.C6.B7.A

实验教程补充习题P1

1.选择题

(1)A

(2)B(3)B(4)D(5)C(6)D(7)D(8)C(9)B(10)B(11)D(12)B

2.填空题

(1)数据内容数据形式

(2)人工管理阶段文件系统管理阶段数据库系统管理阶段

(3)计算机系统数据库数据库管理系统有关人员

(4)实体型(5)事物之间的联系(6)关系模型

(7)属性记录(8)关系(9)选择投影连接(10)多对多

第二章:

课本习题二P42

一.单选题1.B2.D3.B4.D5.B6.D7.D8.C9.B10.B11.A12.C13.B14.A

二.计算题

1.

(1).T.

(2).F.(3).T.

2.

(1)age<15.and.height>=1.8

(2)zhch=”教授”.and.age<40.or.age<35.and.zhch=”副教授”

3.

(1).T.

(2).F.(3)353.00(4).F.(5).F.(6)223.2232

4.

(1)2000.01.18

(2)D(3)3(4)C(5)8(6)8(7)71(8)52

5.

(1).F.

(2).T.(3).F.(4)7(5)_管理_87计算中心管理

实验教程补充习题P3

1.选择题

(1)B

(2)C(3)D(4)A(5)A(6)C(7)A(8)D(9)B(10)D(11)C(12)A(13)C(14)A(15)D

2.填空题

(1)32

(2)Enter(3)选项

(4)菜单命令程序(5);(6).pjx

(7)代码(8)从项目管理器中移去从磁盘上删除

(9)函数>算术运算>关系运算>逻辑运算

(10)N(11).T.(12)337.201

(13)15(14)字符型(15)-1

第三章:

课本习题三P88:

二.单选题1.B2.无答案3.C4.B5.D6.C7.C8.D9.C10.C11.B

实验教程补充习题P21

1.选择题

(1)C

(2)A(3)A(4)B(5)C(6)B(7)B(8)B(9)A(10)D(11)D(12)C(13)B(14)B(15)A(16)D(17)C(18)C(19)C(20)D(21)D(22)B(23)B(24)D(25)B(26)C(27)A(28)C(29)C(30)D

2.填空题

(1)LIST连续不分屏显示信息DISPLAY采用分屏显示信息

(2)各字段宽度存放逻辑删除标记

(3)已经打开并且正在使用的数据表

(4)第5条记录最后一条记录后面(此时EOF()函数的值为.T.)

(5)DELETEPACK

(6)单入口索引文件结构化复合索引文件非结构化(独立)复合索引文件

(7)自由表数据库表(8)新数据表(9)Memo(10)6位

(11)按索引顺序排列

(12)DELETEFORSUBSTR(分类号,1,1)="I"

(13)GO8

DELETENEXT8

PACK

(14)数据表名(15)主索引(16)LISTFOR婚否=.T.

(17)数据库(18)CONTINUE(19)默认值(20).dbf

第四章:

课本习题四P129

二.选择题1.D2.A3.C4.A

三.填空题1union2.NULL.3逻辑AVG、SUM5INTOCURSOR

实验教程补充习题P36

1.选择题

(1)B

(2)B(3)B(4)C(5)B(6)D

(7)D(8)A(9)C(10)B(11)D(12)B(13)C(14)B(15)C(16)C(17)B(18)B(19)D(20)B(21)A(22)B(23)D(24)A(25)C(26)A(27)C(28)B(29)D(30)C(31)B(32)B(33)C(34)B(35)B(36)A(37)C(38)D(39)C(40)D(41)A(42)B(43)B(44)C(45)A(46)D(47)C(48)D(49)A(50)B(51)D(52)D(53)B

2.填空题

(1)条件

(2)视图(3)符合条件

(4)INSERTSELECTUPDATEALTERTABLE

(5)降序升序

(6)UPDATEGZBSET补贴=补贴+800WHERE职称="副教授"

(7)SELECT*FROMRSGLINNERJOINRSGZONRSGL.编号=RSGZ.编号

(8)AVG(工资)GROUPBY职称

(9)UNION(10)NULL(11)逻辑(12)AVGSUM

(13)INTOARRAY14.ORDERBY15.更新

(16)本地视图远程视图17.字段筛选

(18)

①SELECT*FROMSTUD1WHERE获奖次数>5AND性别="男"

②SET获奖次数>=5

③INTOSTUD2VALUES("991201","VFP程序设计")

④SELECT学号,姓名,总成绩FROMstud1WHERE总成绩=(SELECTMAX(总成绩)FROMstud1)

⑤SELECT学号,姓名,总成绩FROMstud1WHERE学号IN(SELECT学号FROMstud2WHERE选课="操作系统")

⑥SELECT*TOP3FROMSTUD1ORDERBY总成绩DESC

(19)OrderBy

(20)职称ISNULL

(21)WHERE实发工资BETWEEN800AND1000或者

WHERE实发工资>=800AND实发工资<=1000

(22)%

(23)GROUPBY

(24)DISTINCT

(25)数据查询

第五章

课本习题五P171

注意:

171页最后一行中,DOa.prg改为DOmain.prg

二.单选题1.A2.A3.A4.D5.A

三.填空

1.1101C或字符型

2.上海市

南京市

济南市

青岛市

四.填空

“0”,ssubstr(s,1,n-1)+substr(s,n+1)

五.根据要求设计程序

1.用两种语句格式实现

●用IF实现:

SETTALKOFF

CLEAALL

CLEA

INPUT“INPUTANUMBERTOX:

”TOX

INPUT“INPUTANUMBERTOY:

”TOY

INPUT“INPUTANUMBERTOZ:

”TOZ

IFX>Y

IFY>Z

?

X,Y,Z

ELSE

IFX>Z

?

X,Z,Y

ELSE

?

Z,X,Y

ENDIF

ENDIF

ELSE&&X

IFY

?

Z,Y,X

ELSE

IFX>Z

?

Y,X,Z

ELSE

?

Y,Z,X

ENDIF

ENDIF

ENDIF

SETTALKON

RETU

●用CASE实现(此种要求有若干种实现方式,只给出一种):

SETTALKOFF

CLEAALL&&清自定义变量,关闭和本程序不相关的其他文件

CLEA&&清屏

INPUT“INPUTANUMBERTOX:

”TOX

INPUT“INPUTANUMBERTOY:

”TOY

INPUT“INPUTANUMBERTOZ:

”TOZ

DOCASE

CASEX>Y

DOCASE

CASEY>Z

?

X,Y,Z

CASEX>Z

?

X,Z,Y

OTHER

?

Z,X,Y

ENDCASE

OTHER&&X

DOCASE

CASEX>Z

?

Y,X,Z

CASEY>Z

?

Y,Z,X

OTHER

?

Z,Y,X

ENDCASE

ENDCASE

SETTALKON

RETU

2.求0-999的水仙花数

SETTALKOFF

CLEA

CLEAALL

FORI=0TO999

A=VAL(LEFT(STR(I,3),1))

B=VAL(SUBSTR(STR(I,3),2,1))

C=VAL(RIGHT(STR(I,3),1))

IFA^3+B^3+C^3=I

?

I

ENDIF

ENDFOR

SETTALKON

RETU

3.利用循环和CASE语句实现

SETTALKOFF

CLEA

CLEAALL

DOWHILE.T.

INPUT"INPUTANUMBERTOX:

"TOX

IFX=0

EXIT

ENDIF

DOCASE

CASEX=1

?

'壹'

CASEX=2

?

'贰'

CASEX=3

?

'叁'

CASEX=4

?

'肆'

CASEX=5

?

'五'

CASEX=6

?

'陆'

CASEX=7

?

'柒'

CASEX=8

?

'捌'

CASEX=9

?

'玖'

ENDCASE

ENDDO

SETTALKON

RETU

4.注意ASC码的判别

SETTALKOFF

CLEA

CLEAALL

ACCE'INPUTASERIALOFCHARACTERSTOS:

'TOS

NZM=0&&字母个数

NSZ=0&&数字个数

NKG=0&&空格个数

FORI=1TOLEN(S)

C=UPPER(SUBSTR(S,I,1))

IFASC(C)<91ANDASC(C)>64

NZM=NZM+1

ENDIF

IFASC(C)<58ANDASC(C)>47

NSZ=NSZ+1

ENDIF

IFASC(C)=32

NKG=NKG+1

ENDIF

ENDFOR

?

'字母个数为:

',NZM

?

'数字个数为:

',NSZ

?

'空格个数为:

',NKG

?

'其他字符个数为:

',LEN(S)-NZM-NSZ-NKG

SETTALKON

RETU

5.本题使用依附自定义函数实现

依附自定义函数方式

SETTALKOFF

CLEA

CLEAALL

INPUT'INPUTANUMBERTOTOR:

'TOX

INPUT'INPUTANUMBERTOTOr:

'TOy

?

AREA(X)-AREA(Y)

SETTALKON

RETU

FUNCTIONAREA

PARAR

RETUPI()*R*R

ENDFUNC

子程序方式

*主程序MAIN.PRG

SETTALKOFF

CLEA

CLEAALL

INPUT'INPUTANUMBERTOTOR:

'TOX

INPUT'INPUTANUMBERTOTOr:

'TOy

?

AREA(X)-AREA(Y)

SETTALKON

RETU

*子程序AREA.PRG

PARAR

RETUPI()*R*R

RETU

6平行四边形打印(本程序有若干种不同的实现方式,行列数可以自己改动)

SETTALKOFF

CLEA

CLEAALL

?

SPACE(7)

FORI=1TO12

?

?

"*"

ENDFOR

FORI=1TO6

?

SPACE(7-I)+"*"+SPACE(10)+"*"

ENDFOR

?

FORI=1TO11

?

?

"*"

ENDFOR

SETTALKON

RETU

7.假设表已经存在。

SETTALKOFF

CLEA

CLEAALL

USEN_LIST

FORI=1TO20

INPUT'ANUMBERTOX:

'TOX

APPEBLAN

REPLDATAWITHX

ENDFOR

INDEXONDATATAGDATADESC

GOTOP

?

'TheMAXNUMBERIS:

',DATA

GOBOTT

?

'TheMINNUMBERIS:

',DATA

USE

SETTALKON

RETU

程序部分课外补充题目:

1.已知数列前两项分别为1,1,从第三项起,每项的值为其紧邻前两项的和,求第40项的值。

此题实际是求非波纳契数列的第40项。

方法一:

数组实现

SETTALKOFF

CLEA

CLEAALL

DIMEA(40)

A

(1)=1

A

(2)=1

FORI=3TO40

A(I)=A(I-1)+A(I-2)

ENDFOR

?

A(40)

SETTALKON

RETU

方法二:

变量倒换法

SETTALKOFF

CLEA

CLEAALL

S1=1

S2=1

FORI=3TO40

S3=S1+S2

S1=S2

S2=S3

ENDFOR

?

S3

SETTALKON

RETU

2.求1!

+2!

+3!

+。

+10!

基本方法

SETTALKOFF

CLEA

CLEAALL

S=0

FORI=1TO10

JC=1

FORJ=1TOI

JC=JC*J

ENDFOR

S=S+JC

ENDFOR

?

S

SETTALKON

RETU

改进方法

SETTALKOFF

CLEA

CLEAALL

S=0

JC=1

FORI=1TO10

JC=JC*I

S=S+JC

ENDFOR

?

S

SETTALKON

RETU

3.从键盘任意输入正数负数或零,分别求出所有正数个数,负数个数,全部数的和,输入0则结束。

利用循环实现。

SETTALKOFF

CLEA

CLEAALL

NZS=0

NFS=0

L_SUM=0

DOWHILE.T.

INPUT'INPUTANUMBERTOX:

'TOX

IFX=0

EXIT

ENDIF

L_SUM=L_SUM+X

IFX>0

NZS=NZS+1

ELSE

NFS=NFS+1

ENDIF

ENDDO

?

L_SUM,NZS,NFS

SETTALKON

RETU

4.从键盘输入一个正数,求小于该数的所有奇数和。

SETTALKOFF

CLEA

CLEAALL

DOWHIL.T.&&控制必须输入整数,否则循环输入

INPUT'INPUTANUMBERTOX:

'TOX

IFX=0

EXIT

ENDIF

L_SUM=0

FORI=1TOXSTEP2

L_SUM=L_SUM+I

ENDF

?

L_SUM

ENDDO

SETTALKON

RETU

5.从键盘任意输入10个数,求最大和最小,不用数组。

SETTALKOFF

CLEA

CLEAALL

INPUT'INPUTANUMBERTOX:

'TOX

MAXNUM=X

MINNUM=X

FORI=1TO9

INPUT'INPUTANUMBERTOX:

'TOX

IFX>MAXNUM

MAXNUM=X

ENDIF

IFX

MINNUM=X

ENDIF

ENDF

?

MAXNUM,MINNUM

SETTALKON

RETU

6.从键盘人数输入20个数,放在数组中,输入完毕,求出最小数的下标。

思路:

在输入数据的同时即进行最小判断,输入结束,最小的数的位置号存放的K中。

SETTALKOFF

CLEA

CLEAALL

DIMENUM(20)

INPUT'ANUMBERTOX:

'TONUM

(1)

K=1&&最小数的序号,起初假设第一个最小

FORI=2TO20

INPUT'INPUTANUMBER:

'TONUM(I)

IFNUM(I)

(1)

K=I

ENDIF

ENDF

?

K,NUM(K)

SETTALKON

RETU

7.求二维数组中行上最大、列上最小的数(本题以3行3列数组为例)

SETTALKOFF

CLEA

CLEAALL

DIMEA(3,3)

FORI=1TO9

INPUT'INPUTANUMBERTOARRAY:

'TOA(I)

ENDFOR

FORI=1TO9

?

?

STR(A(I))

IFI%3=0

?

ENDIF

ENDFOR

FORI=1TO3

K=1&&假设每一行的第一个最大

FORJ=2TO3&&求每一行上的最大

IFA(I,J)>A(I,K)

K=J

ENDIF

ENDFOR

&&以上循环结束后,A(I,K)为第I行上的最大元素

B=.T.

FORR=1TO3

IF(A(R,K)I

B=.F.

EXIT

ENDIF

ENDFOR

IFB

?

'第'+STR(I)+'行第'+STR(K)+'列的元素'+STR(A(I,K))+'符合要求'

ENDIF

ENDFOR

SETTALKON

RETU

8.从键盘输入密码,不在屏幕上显示输入的密码。

判断正确与否,最多3次机会。

利用SETCONSOLEOFF/ON实现

SETTALKOFF

CLEA

CLEAALL

ZQKL='1234'&&THERIGHTPASSWORD

FORI=1TO3

?

'请输入正确口令:

'

SETCONSOLEOFF

ACCETOPASSWORD

SETCONSOLEON

IFPASSWORD==ZQKL

?

'恭喜您,答对了!

'

EXIT

ELSE

IFI<3

?

'您还有'+STR(3-I)+'次机会,再试一次吧!

'

ELSE

?

'抱歉,您没有机会了。

'

EXIT

ENDIF

ENDIF

ENDFOR

SETTALKON

RETU

9.数据表中有”成绩”和”评估”字段,根据成绩决定评估等第。

小于60分不及格;60分到70分及格;70分到80分中等;80分到90分良好;90分以上优秀。

利用CASE语句实现

SETTALKOFF

CLEA

CLEAALL

USECOMPUTER

DOWHILENOTEOF()

DOCASE

CASE成绩<60

REPLACE评估WITH‘不及格’

CASE成绩<70

REPLACE评估WITH‘及格’

CASE成绩<80

REPLACE评估WITH‘中等’

CASE成绩<90

REPLACE评估WITH‘良好’

CASE成绩<=100

REPLACE评估WITH‘优秀’

ENDCASE

SKIP

ENDDO

CLSOEALL

SETTALKON

RETU

10.某中学招收高中一年级新生12个班,学生入学成绩已登记在STUDENT.DBF自由表中,表中含姓名(C型,已输入数据)、总分(N型,已输入数据)、班级(N型,未输入数据)字段。

编程,根据总分将学生均匀搭配到12个班中,并把该学生的班级字段填写其班级序号,最后再将同班的记录分别拷贝到CLASS1.DBF,CLASS2.DBF,……,CLASS12.DBF中。

分配班级时,按照巡回折转的顺序进行(如,总分第一名给1班,第二名给2班,…………,第12名给12班,第13名给12班,第14名给11班,…………….依次类推)。

SETTALKOFF

CLEA

CLEAALL

USESTUDENTS

INDEXON-总分 TAG总分(或INDEXON总分 TAG总分DESC)

GOTOP

DOWHILENOTEOF()

FORI=1TO12

REPL班级WITHI

SKIP

IFEOF()

EXIT

ENDIF

ENDFOR

FORI=1TO12STEP—1

REPL班级WITHI

SKIP

IFEOF()

EXIT

ENDIF

ENDFOR

ENDDO

FORI=1TO12

T=ALLTRIM(STR(I,2))

COPYTOCLASS&TFOR班级=I

ENDFOR

CLEAALL

SETTALKON

RETU

11.已知某单位有一个工资票额数据表GZPM.DBF,表中包括的字段为:

工号,姓名,实发工资(N,7,2),一百元(N,2),五十元(N,2),二十元(N,2),十元(N,2),五元(N,2),二元(N,2),一元(N,2)等。

并假设工号、姓名和实发工资字段都已经输入了数据,且实发工资中不含角分值。

编程工资分票程序,计算并显示该单位发放工资时所需要的各种票面张数(也就是计算实际发放工资时每人需要的各种面额人名币张数)。

利用自程序实现(本程序票面优先发大额票面,如60元分成一个50和一个10元,而不是三个20元或6个10)

SETTALKOFF

CLEA

CLEAALL

USEGZPM

DOWHILENOTEOF()

F100=INT(实发工资/100)&&100的票面张数

B=实发工资%10&&工资中个位数的值

C=INT((实发工资F100*100-B)/10)&&工资中十位数的

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 笔试

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2