程序填空题的应试技巧
程序填空题采用的是选择填空,在做题时可采用以下方法来寻找正确的答案。
1.找匹配语句。
(1)根据程序结构来填空。
有DO WHILE,考虑有无ENDDO配对,有IF,有无ENDIF配对。
USE 学生……USE
LOCATE FOR ……CONTINUE或FOUND()或!EOF()
INDEX ON ……SET INDEX TO
SET PROC TO 过程名……SET PROC TO
(2)如果程序中有变量的使用语句,如S=S+1,X=X+1,检查程序开头处有无变量赋初值的语句,是否需填STORE 0 TO S, X。
(3)使用TOTAL命令,检查是否存在建索引或排序的语句。
(4)DO AAA(过程名) WITH …,检查过程中有无PARA。
2.边读程序边做题
用实例代入读程序,并结合语句含义和函数来考虑。
3.与表文件有关的函数有:
(1)函数:EOF() BOF() FCOUNT() FIELDS() FOUND()
FILE() RECNO()RECCOUNT()
(2)命令REPLACE ……WITH
LOCATE ……FOR
DELETE FILE
DISP ALL FOR ……
APPEND BLANK
COUNT TO 新变量名FOR ……
SUM 数值型字段TO 新变量名FOR ……
AVERAGE数值型字段TO 新变量名FOR ……
SKIP n
DISP NEXT N
4.输入和输出语句:
程序填空题
1:[程序说明]求1!+3!+5!+······N!的值。
N由键盘输入,且为奇数。
[程序]
SET TALK OFF
CLEAR
__(5)__
STORE 0 TO S,T
FOR I=1 TO N STEP 2
DO SUB
__(6)__
ENDFOR
?S
SET TALK ON
PROC SUB
T=1
FOR J=1 TO __(7)__
__(8)__
ENDFOR
(5)、A)ACCEPT "N=" TO N B)INPUT "N=" TO N
C)WAIT "N=" TO N D)DO WHILE .T.
(6)、A)S=S+T B)S=S+N C)S=T D)S=S+T*I
(7)、A)N B)T C)2*I+1 D)I
(8)、A)T=T*I B)T=T*J C)T=T*N D)S=S+J*T
2、由用户输入指定表文件、指定字段和指定内容进行查询。
SET TALK OFF
CLEA
ACCEPT ‘输入表名(带扩展名)’TO FN
ACCEPT ‘输入字段名(字符型)’TO FDN
ACCEPT ‘输入查询内容(字符串)’TO CH
IF (1)
(2)
LIST FOR (3)
USE
(4)
? ‘找不到该文件!’
ENDIF
SET TALK ON
(1) A、V ART(FN) B、FILE(‘FN’)
C、FILE(&FN)
D、FILE(FN)
(2) A、USE EVAL(FN)B、USE FN
C、USE &FN..DBF
D、USE (FN.DBF)
(3) A、CH$FDN B、AT(CH,FDN)>0
C、CH$&FDN
D、AT(&CH,&FDN)>0
(4) A、EXIT B、LOOP C、IF D、ELSE
3、程序:本程序的功能:从键盘输入N个无序数(N由键盘确定),去掉一个最大数,去掉一个最小数,然后求平均值。
[程序]
SET TALK OFF
CLEAR
INPUT "N=" TO N
INPUT "A=" TO A
STORE A TO X,Y
___(5)___
___(6)___
INPUT "B=" TO B
S=S+B
IF X<B
X=B
ENDIF
__(7)__
Y=B
ENDIF
ENDFOR
__(8)__
?R/P
SET TALK ON
(5)A)S=A B)S=0 C)S=N D)I=1
(6)A)FOR I=1 TO N B)FOR I=2 TO N
C)DO WHILE I<=N D)FOR I=1 TO A
(7)A)IF X<B B)IF X<Y C)IF Y>B D)IF Y<X
(8)A)R=S B)R=S-A-B C)R=S-N-A D)R=S-X-Y
4、显示输出给定的字符串(单字节)表达式的倒置字符串,例如,字符串“12345”,
倒置后的字符串为“54321”。
[程序]
SET TALK OFF
CLEAR
________(5) "请输入指定的字符串:" to X
C=SPACE(0)
L=________(6)
FOR ________(7)
R=________(8)
C=R+C
ENDFOR
?"指定的字符串:"+x+"经倒置后变为:"+c
SET TALK ON
(5)A、ACCEPT B、INPUT C、USE D、WAIT
(6)A、1 B、N C、LEN(X)D、MAX(X)
(7)A、I=0 TO L B、I=1 TO L C、0 TO L D、1 TO L
(8)A、STR(X) B、STR(X,I,1) C、SUBSTR(X,I,1)D、SUBSTR(X,L,1) 5、给定程序的功能是:编写口令判断程序,要求在VFP主窗口显示信息并从键
盘输入口令,能自动判断口令是否与系统口令(学生.DBF中“姓名”字段的值)完全一致,若一致则显示欢迎信息,否则给予二次重输机会,若仍不对则退出系统。
SET TALK OFF
CLEAR
USE 学生
I=1
DO WHILE I<=3
?"请输入口令:"
(1)
ACCEPT TO MPW
SET CONSOLE ON
LOCATE (2)
IF (3)
?"欢迎进入本系统!"
EXIT
ELSE
(4)
?"你无权使用本系统!"
ELSE
?"口令不正确,请重输!"
ENDIF
(5)
I=I+1
ENDDO
USE
SET TALK ON
(1)A、SET CONSOLE OFF B、C、SET PROC TO D、SET TALK OFF (2)A、ALLTRIM(姓名)=ALLTRIM(MPW) B、FOR ALLTRIM(姓名)=ALLTRIM(MPW)
C、FOR ALLTRIM(姓名)= TRIM(MPW)
D、FOR ALLTRIM(姓名)= LTRIM(MPW)
(3)A、EOF() B、FOUND() C、BOF() D、! FOUND() (4)A、IF I<=2 B、IF I<3 C、IF I>=3 D、IF I<2 (5)A、LOOP B、ENDDO C、CONT D、ENDIF
6、完成下列删除表文件的程序
SET TALK OFF
CLEAR
DO WHILE .T.
ACCEPT ”请输入要删除的表文件名(扩展名略):” TO FILENAME
FILENAME=TRIM(LTRIM(FILENAME))+”.DBF”
IF (6)
ACCEPT “该文件不存在!继续吗?(Y/N)” TO YN
IF (7)=”N”
EXIT
ENDIF
ELSE
(8)
LIST
WAIT “是这个文件吗?(Y/N)” TO YN
IF LOWER(YN)=”y”
USE
(9)
EXIT
ELSE
WAIT ”继续吗?(Y/N)” TO YN
IF LOWER(Y/N)=”n”
USE
EXIT
ENDIF
ENDIF
ENDIF
ENDDO
SET TALK ON
(6)A、!FILE(FILENAME”)B、!FILE(&FILENAME)
C、!FILE(FILENAME)
D、FILE(FILENAME)
(7)A、UPPER(YN)B、LOWER(YN)
C、UPPER(“YN”)
D、LOWER(“YN”)
(8)A、USE FILENAME B、USE “FILENAME”
C、USE &FILENAME..DBF
D、USE &FILENAME
(9)A、DELETE FILE FILENAME B、DELETE FILE &FILENAME
C、DELETE FILENAME
D、DELETE &FILENAME。