一、程序填空题的应试技巧
程序填空题采用的是选择填空,在做题时可采用以下方法来寻找正确的答案。
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:[本程序功能说明]求正数值表达式(M从键盘输入,M可以为小数,如:M的值为436556.017,最大数码为7,最小数码为0)值中的最大数码和最小数码.
SET TALK OFF
CLEAR
INPUT “M=” TO M
N=M
DO WHILE__(1)__
N=N*10
ENDDO
STORE __(2)__ TO D, X
DO WHILE N>0
R=MOD(N,10)
IF R>D
D=R ENDIF __(3)__ X=R ENDIF __(4)__ ENDDO ? "SD="+STR(D,1)+ ",SX="+STR(X,1) SET TALK ON (1) 、A)N<0 B)MOD(N,10)=0 C)INT(N) !=N D)INT(N)=N (2) 、A)MOD(N,10) B)INT(N) C)N D)M (3) 、A)IF R
D C)IF RX (4) 、A)N=N/10 B)N=MOD(N,10) C)N=M/10 D)N=INT(N/10) 2:[程序说明]求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 C)WAIT "N=" TO N (6) 、A)S=S+T B)S=S+N (7) 、A)N B)T (8) 、A)T=T*I B)T=T*J
B)INPUT "N=" TO N
D)DO WHILE .T.
C)S=T D)S=S+T*I
C)2*I+1 D)I
C)T=T*N D)S=S+J*T
3、由用户输入指定表文件、指定字段和指定内容进行查询。
SET TALK OFF
CLEA
ACCEPT ‘输入表名(带扩展名) ’TO FN
ACCEPT ‘输入字段名(字符型) ’TO FDN ACCEPT ‘输入查询内容(字符串) ’TO CH IF LIST FOR USE ? ?找不到该文件!? ENDIF SET TALK ON (1) A、VART(FN) C、FILE(&;FN) (2) A、USE EVAL(FN) C、USE &;FN..DBF (3) A、CH$FDN C、CH$&;FDN (4) A、EXIT B、LOOP B、FILE(?FN?)
D、FILE(FN)
B、USE FN
D、USE (FN.DBF)
B、AT(CH,FDN)>0
D、AT(&;CH,&;FDN)>0
C、IF D、ELSE
4、程序:本程序的功能:从键盘输入N个无序数(N由键盘确定) ,去
掉一个最大数,去掉一个最小数,然后求平均值。 [程序] SET TALK OFF CLEAR INPUT "N=" TO N INPUT "A=" TO A STORE A TO X,Y ___(5)___ P=N-2 ___(6)___ INPUT "B=" TO B S=S+B IF X (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 XB (8)A)R=S B)R=S-A-B C)R=S-N-A
D)IF Y D)R=S-X-Y
5、给定程序的功能是:根据输入的数据,计算不大于该数的偶数累加和。 [程序] SET TALK OFF CLEAR YN="Y" DO WHILE UPPER(YN)="Y" INPUT "请输入两位以内的正整数:" TO N STORE 0 TO X,Y Z="0" DO WHILE () X=X+1 IF () LOOP ELSE Z=Z+"+"+STR(X,2) Y=Y+X ENDIF ENDDO ? "&;Z="+STR(Y,4) WAIT "继续计算?(Y/N)" TO () ENDDO ? "再见!" SET TALK ON (1)A、X<=N B、XN D、X>=N (2) A、 INT(X/2)=0 B、 INT(X/2)<>0 C、 INT(X/2)=X/2 D、 INT(X/2)<>X