VF第6章习题练习

  • 格式:doc
  • 大小:59.50 KB
  • 文档页数:11

Visual Foxpro练习6

一、 单项选择题

1. 在程序中定义局部变量的命令动词是( )。

A.PUBLIC B.PRIVATE C.LOCAL D.DECLARE

2. VFP 6.0程序设计的三种基本结构是( )。

A.顺序,选择,循环 B.顺序,选择,逻辑 C.模块,转移,循环 D.网状,选择,逻辑

3. 在DO WHILE / ENDDO循环中,若循环条件设置为.T.,则下列说法中正确的是( )。

A.程序无法跳出循环 B.程序不会出现死循环 C.用LOOP可跳出循环 D.用EXIT可跳出循环

4. SCAN循环语句是( )扫描式循环。

A.数组 B.数据表 C.内存变量 D.程序

5. 在 DO WHILE … ENDDO循环结构中,LOOP命令的作用是( )。

A.退出过程,返回程序开始处

B.转移到DO WHILE语句行,开始下一个判断和循环

C.终止循环,将控制转移到本循环结构ENDDO后面的第一条语句继续执行

D.终止程序执行

6. 下列程序段执行时在屏幕上显示的结果是( )。

DIME A(6)

A(1)=1

A(2)=1

FOR J=3 TO 6

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

NEXT

?A(6)

A.5 B.6 C.8 D.7

7. 执行如下程序

SET TALK OFF

S=0

I=1

INPUT "N=" TO N

DO WHILE S<=N

S=S+I

I=I+1

ENDDO ?S

SET TALK ON

如果输入N值为5,则最后S的显示值是( )。

A.1 B.3 C.5 D.6

8. 下列程序段执行时在屏幕上显示的结果是( )。

X1=20

X2=30

DO test With X1,X2

?X1,X2

PROCEDURE test

PARAMETERS a,b

x=a

a=b

b=x

ENDPRO

A. 30 30 B.30 20 C.20 20 D.20 30

9. 有程序如下

USE CJ

M.ZF=0

SCAN

M.ZF=M.ZF+ZF

ENDSCAN

?M.ZF

RETURN

其中数据库文件CJ.DBF中有2条记录,内容如下

XM ZF

1 李四 500.00

2 张三 600.00

运行该程序的结果应当是( )。

A.1100.00 B.1000.00 C.1600.00 D.1200.00

10. 如下程序段的输出结果是( )。

DECLARE b(6)

FOR i=1 TO 6

b(i)=i*10

NEXT

FOR i=1 TO 6 ?b(6)

NEXT

A.60 B.50 C.40 D.30

11. 下列程序段的输出结果是( )。

ACCEPT “请输入任意一个字符串:” TO A

IF A=[123]

S=0

ENDIF

S=1

?S

A.0 B.1 C.123 D.由A的值决定

12-14题基于如下程序:

设ZGK.DBF为职工数据库文件,“职称”为该库中一字符型字段名。本程序的功能是显示库中职称为教授的所有记录。

SET TALK OFF

CLEAR ALL

( 12 )

DO WHILE NOT EOF()

IF ( 13 )

SKIP

LOOP

ENDIF

DISPLAY

( 14 )

ENDDO

USE

SET TALK ON

12. A.USE ZGK B.USE C.LOCATE FOR "教授"$职称 D.SET TALK OFF

13. A.职称= "教授" B.职称<> "教授" C.职称>< "教授"

D.!EOF()

14. A.EXIT B.LOOP C.SKIP

D.GO TOP

15. 有以下程序,假设从键盘输入数字75,请选择最后在屏幕显示的结果:( )。

CLEAR

INPUT "请输入你的成绩:" TO cj IF cj >=60

IF cj >=80

?"优良!"

ELSE

?"及格!"

ENDIF

ELSE

?"不及格!"

ENDIF

RETURN

A.优良 B.及格 C.不及格 D.空白

16. 表示应用程序文件的扩展名为___________________。

二、 编程题

1. 求数N的阶乘

2. 求两个数中较小值

3. 编程实现下列分段函数

4. 求前100个自然数的和:S=1+2+3+4+„„+100

5. 计算1~100的奇数和

6. 计算自然对数e的近似值(n为20)

e=1+1/1!+1/2!+…+1/n!

7. 编程求自然数1——1000中所有能被7整除的数的累加和。

参考答案:

一、选择题

1-5 CADBB 6-10 CDBAA 11-15BABCB 16 .prg

二、编程题

1、方法1:CLEAR 1 (X>0)

0 (X=0)

-1 (X<0)

Y=

Y= SET TALK OFF

INPUT "请输入数N:" TO N

IF N < 1

? "输入的数:", N, '太小!'

CANCEL

ENDIF

STORE 1 TO I,S

DO WHILE I <= N

S=S*I

I=I+1

ENDDO

? N,"的阶乘是:", S

SET TALK ON

RETURN

方法2:CLEAR

SET TALK OFF

INPUT “请输入N的值:” TO n

T=1

FOR I=1 TO n

t=t*I

NEXT

? N, ??"的阶乘=“,t

SET TALK ON

RETURN

2、CLEAR

SET TALK OFF Input "X=" To X

Input "Y=" To Y

If X

Min=X

Else

Min=Y

Endif

? " X与Y中的较小者是:", Min

SET TALK ON

RETURN

3、方法1:CLEAR

SET TALK OFF

Input "请输入一个数:" To X

If X>0

Y=1

Else

If X=0

Y=0

Else

Y=-1

Endif

Endif

? Y

SET TALK ON

RETURN

方法2:CLEAR SET TALK OFF

Input "请输入一个数:" To X

Do Case

Case X>0

Y=1

Case X=0

Y=0

Otherwise

Y=-1

Endcase

? Y

SET TALK ON

RETURN

4、方法1:CLEAR

SET TALK OFF

S=0

N=1

Do While N<=100

S=S+N

N=N+1

Enddo

? "1+2+3+„„+100=", S

SET TALK ON

RETURN

方法2:CLEAR SET TALK OFF

S=0

For N=1 To 100

S=S+N

Endfor

? "1+2+3+„+98+99+100=",S

SET TALK ON

RETURN

5、方法1:CLEAR

SET TALK OFF

store 0 to i, t

do while i<100

i=i+1

if int(i/2)=i/2

loop

endif

t=t+i

enddo

? ’1~100奇数和为:’ , t

SET TALK ON

RETURN

方法2:CLEAR

SET TALK OFF

store 0 to i, t

do while i<100

i=i+1