1、VF习题1VF第5章习题(1)选择题:1、在VF中,用来建立程序文件的命令是( )A、CREATE COMMAND B、CREATE FILE C、MODIFY FILE D、MODIFY COMMAND 2、在VF中,程序文件的扩展名是( )A、PRG B、QPR C、APP D、SCX3、在INPUT、ACCEPT和WAIT三个命令中,必须要以回车键表示输入结束的命令是( )A、INPUT ACCEPT B、INPUT WAIT C、ACCEPT WAIT D、INPUT、ACCEPT和WAIT4、结构化程序设计的3种基本结构是( )A、顺序、选择、模块 B、选择、循环、模块C、顺序、循环
2、、模块 D、顺序、选择、循环5、在VF中,条件语句属于( )A、顺序结构 B、选择结构 C、循环结构 D、模块结构6、下列关于DO CASEENDCASE 语句说法不正确的是( )A、DO CASE和ENDCASE必须成对出现B、只要CASE条件成立,就执行这个CASE条件对应的命令序列C、所有的CASE条件都不成立且没有OTHERWISE语句,则直接跳出本结构,执行ENDCASE后面的语句D、在DO CASE和第一个CASE之间的任何语句都不被执行7、在DO WHILE循环语句中,如果条件永远为真,则利用下列( )语句可以退出此循环体。A、LOOP B、EXIT C、CLOSE D、QUIT
3、8、在循环结构程序设计中,在指定范围内扫描数据表文件,查找符合条件的记录,并执行循环体中的命令,应使用的循环结构为( )A、SCANENDSCAN B、FORENDFORC、DO WHILEENDDO D、DO CASEENDCASE9、关于过程文件下列说法错误的是( )A、过程文件的建立使用MODIFY COMMAND命令B、过程文件的默认扩展名为PRGC、在调用过程文件中的过程之前不必打开过程文件D、过程文件只包含过程,可以被其他程序所调用10、在VF中,根据变量的作用域来分,内存变量可分为( A、字段变量和内存变量 B、公共变量和私有变量C、公共变量和局部变量 D、公共变量、私有变量和局
4、部变量11、在某个程序模块中用PRIVATE语句定义的内存变量是( )A、可以在该程序的所有模块中使用B、只能在定义该变量的模块中使用C、只能在定义该变量的模块及其上层模块中使用D、只能在定义该变量的模块及其下属的模块中使用12、只能被本层模块调用,而不能被上层模块或下层模块调用的变量类型是( )A、公共变量 B、私有变量 C、局部变量 D、局部变量和私有变量13、通过PUBLIC命令建立内存变量,系统默认的内存变量初值为( )A、.T. B、 .F. C、0 D、114、在调试器窃笑中可以打开的子窗口数为( )A、3 B、4 C、5 D、615、在调试器中,可以显示程序、过程和方法程序中的变
5、量、数组和对象的名称,以及当前取值和类型的窗口是( )A、跟踪 B、监视 C、局部 D、调用堆栈16、在调试器中设置断点的类型有( )A、2种 B、3种 C、4种 D、5种17、下列各组语句可以将变量A,B的值互换的是( )A、A=B B、A=(A=B)/2 C、A=A+B D、A=C B=A B=(A=B)/2 B=A-B C=B A=A-B B=A18、设有如下程序段:A=10B=20C=40IF ABIF CAC=A+BELSEC=A-BENDIFENDIF?C执行该程序,显示结果为( )A、30 B、-10 C、10 D、4019、设成绩表当前记录中“计算机”字段的值为85,执行下面程
6、序段之后,输出结果为()DO CASE CASE 计算机=60 ?“计算机等级是”+“及格”CASE 计算机=75 ?“计算机等级是”+“良好”CASE 计算机=85 ?“计算机等级是”+“优秀”ENDCASEA、不及格 B、及格 C、良好 D、优秀20、执行如下程序,如果输入X的值为5,则最后S的显示值为( )SET TALK OFF S=0 I=1 INPUT “X=” TO X DO WHILE S=X S=S+I I=I+1 ENDDO ?S SET TALK ONA、1 B、3 C、5 D、621、下列关于修改程序的说法正确的是( )A、打开“项目管理器”,选择要修改的程序文件,单击
7、“修改”按钮B、在“文件”菜单中选择“打开”菜单项,选择“程序”选项,选择要修改的程序C、通过MODIFY COMMAND 来修改程序文件D、以上说法均正确22、在下述的操作中,不能够执行VF程序文件的有( )A、若程序包含在一个项目中,则在“项目管理器”中选定它并单击“运行”按钮B、在“程序”菜单中选择“运行”命令,在弹出的对话框中选择要运行的程序名C、在命令窗口中,输入DO命令及要运行的程序文件名D、在“资源管理器”中单击要运行的程序文件23、利用DO命令运行下列类型的文件时,一定要带扩展名的是( )A、PRG B、APP C、EXE D、MPR24、执行命令“ACCEPT “请输入数据:
8、” TO W”,则可以通过键盘输入的内容是( )A、字符串 B、字符串、数值C、字符串、数值和逻辑值 D、所有常量和合法表达式25、下列不能出现LOOP和EXIT语句的程序结构是( )A、FORENDFOR B、DO WHILEENDDOC、IFELSEENDIF D、SCANENDSCAN26、下列属于条件语句的是( )A、FORENDFOR B、DO WHILEENDDOC、DO CASEENDCASE D、SCANENDSCAN27、有关多分支结构DO CASE ENDCASE的叙述正确的是( )A、有多个逻辑表达式为真时,执行所有满足条件的CASE之后的语句组B、有多个逻辑表达式为真时
9、,只执行第一个满足条件的CASE后的语句组C、有多个逻辑表达式为真时,只执行最后一个满足条件的CASE后的语句D、DO CASE ENDCASE允许有多个程序段被执行28、DO WHILEENDDO的循环结构中,下列叙述正确的是( )A、循环体中的LOOP和EXIT语句的位置是固定的B、在程序中应加入控制循环结束的语句C、执行到ENDDO时,首先判断表达式的值,然后再返回DO WHILE语句D、循环体中的LOOP语为跳出循环体29、有关嵌套的叙述正确的是( )A、循环体内不能含有条件语句 B、循环语句不能嵌套在条件语句之中C、嵌套只能一层,否则会导致程序出错 D、正确的嵌套中不能交叉30、下列
10、关于FORENDFOR循环结构叙述不正确的是( )A、循环的次数一般都已定义好B、循环体中的LOOP语可用来跳出循环C、循环体中EXIT的位置可以是不固定的位置D、循环体中不应该包含循环变量值的命令31、执行LOCATE、CONTINUE和DO WHILEENDDO语句,相当于下列的( )语句A、FORENDFOR B、DO CASEENDCASEC、IFELSEENDIF D、SCANENDSCAN32、在执行循环语句时,可利用下列的( )语句继续执行循环体A、LOOP B、EXIT C、SKIP D、QUIT33、下面有关局部变量的说法正确的是( )A、在程序中用PRIVATE可建立一个局
11、部变量B、在命令窗口中被赋值的变量是局部变量C、在被调用下级程序中用PUBLIC命令声明的变量是局部变量D、在命令窗口中用LOCAL命令声明的变量是局部变量34、有关参数传递叙述正确的是( )A、当实参的数量少于形参的数量时,多余的形参初值取逻辑假B、当实参的数量大于形参的数量时,多余的实参被忽略C、实参和形参的数量必须相等D、选项A和B均正确35、下列关于接收参数和发送参数的说法,正确的是( )A、接收参数语句PARAMTERS可以写在程序中的任意位置B、通常发送参数语句DO WITH和接收参数语句PARAMTERS不必搭配成对,可以单独使用C、发送参数和接收参数排列顺序与数据类型必须一一对
12、应D、发送参数和接收参数的句字必须相同36、利用命令调用“调试器”应使用( )、DEBUG B、RUN DEBUG C、OPEN DEBUG D、DO DEBUG37、可以设置表达式类型的断点的窗口是( )A、跟踪窗口 B、监视窗口 C、局部窗口 D、调用堆栈窗口38、可以控制列表框内显示变量类型的窗口是( )A、跟踪窗口 B、监视窗口 C、局部窗口 D、调用堆栈窗口39、在调试器的程序中设置下列( )命令,可以计算出表达式的值A、DEBUG B、OPEN C、DEBUGIN D、DEBUGOUT40、执行如下程序:CLEARSET TLAK OFFSTORE .T. TO XSTORE 0
13、TO YDO WHILE X Y=Y+1 IF INT(Y/3)=Y/3 ?Y ELSE LOOP ENDIF IF Y20 STORE .F. TO X ENDIFENDDOSET TLAK ON则程序的运行结果为:( )A、3 6 9 12 15 18 21 B、3 6 9 12 15 18C、3 6 9 12 15 D、3 6 9 1241、设不目录下有数据表文件学生表,表中共有10条记录,执行如下程序:SET TALK OFFUSE 学生表FOR N=10 TO 1 STEP -1 IF BOF() EXIT ENDIF GO n DISPLAYENDFORUSE SET TLAK O
14、N则程序执行的结果为( )A、仅显示表中的第1条记录 B、仅显示表中的第10条记录C、按记录号升序地逐条显示表中10条记录 D、按记录号降序地逐条显示表中10条记录42、执行下列程序:CLEARDO WHILE I=3 DO PROG1 ? ”P(“+STR(I,1)+”)=”+STR(A,2)+”,” I=I+1ENDDO? “B=”+STR(B,2)RETURNPROCEDURE PROG1 A=A*2 B=B+ARETURN程序的运行结果为( )A、P(1)=2,P(2)=3,P(3)=4,P(4)=15 B、P(1)=2,P(2)=4,P(3)=6,P(4)=8C、P(1)=2,P(2
15、)=4,P(3)=6,P(4)=18 D、P(1)=2,P(2)=4,P(3)=8,P(4)=1543、有如下程序:*主程序 P.PRG *子程序P1.PRGSET TALK OFF x2=x2+1STORE 2 TO X1,X2,X3 DO P2X1=X1+1 X1=X1+1DO P1 RETURN?X1+X2+X3 *子程序P2.PRGSET TALK ON X3=X3+1RETURN RETURN TO MASTER执行命令DO P后,屏幕显示的结果为( )A、3 B、4 C、9 D、1044、执行以下程序:CLEARDO ARETURNPROCEDURE APRIVATE SS=5DO
16、 B?SRETURNPROCEDURE BS=S+10RETURN程序运行结果为( )A、5 B、10 C、15 D、程序错误填空题:1、结构化程序设计所包含的3种基本结构是 、 和 。其中SCANENDSCAN语句属于 结构。2、执行下列程序,要输入变量M的值为 才能使程序继续运行 DO WHILE .T. WAIT “m=” TO M IF UPPER(m)$”Y” OR UPPER(M)$ “N” EXIT ENDIF ENDDO3、在DO WHILE 和ENDDO语句中,用 短语可退出循环。4、有如下程序:FOR N=1 TO 5 STEP 2 ?NENDFOR在此FOR循环语句中,循
17、环变量N的初值为 ,终值为 ,步长为 ,该循环体执行了 次。5、若要关闭全部过程文件应使用命令 。6、下列程序段用来求1+2+3+100的值。S=0FOR S=S+NENDFOR?SRETURN其中,横线部分的语句可以是 ,或者 。7、假设数据表文件成绩中有“总分”字段,运行下列程序段:USE 成绩表XI=0SCAN XI=MAX(总分,XI)ENDSCAN?XIRETURN则执行该程序后,XI显示的值为成绩表中的 。8、程序是 ,它被存放在称为 或 的文本文件中。9、SCANENDSCAN循环结果的语句通过 来控制循环的。10、在编写程序时,可以在程序行的最前端加上一个 符号,表示该行为注释
18、行,在运行程序时,并不执行该行;如果当某程序行过长时,可以在此行加上一个 符号,可将此程序行按两行或多行显示。11、一个过程文件中最多包含 个过程,每个过程的第一条语句是 。12、利用 命令可以调用调试窗口,在调试器中包含 、 、 、 和 5个窗口。程序填空和程序结果:1、下列程序根据输入的学生成绩,来判断学生成绩等级,其中成绩大于或等于90分的为优秀,75-89分的为良好,60-74的为及格,小于60分的为不及格,请正确补充程序行CLEARSET TALK OFF “请输入成绩:” TO CJDO CASE CASE CJ60 DJ=“不及格” CASE CJ75 DJ=“及格” CASE
19、CJ90 DJ=“良好” DJ=“优秀”ENDCASE?DJSET TALK ON2、执行下列程序CLEARFOR I=10 TO 5 STEP -2 IF I%3=0 I=I-1 ENDIF I=I-2 ?IENDFOR3、下列程序是从10个实数中统计最大数的程序,请正确补充程序行CLEARSET TALK OFFK=1INPUT “请输入第一个数:” TO YDO WH ILE INPUT “请再次输入一个数:” TO X IF Y=10 EXIT ENDIFENDDO?Y程序的运行结果为: 5、阅读下列程序:SET TALK OFFSTORE 0 TO X,YUSE 工资表SCAN IF
20、 工资=1000 LOOP ENDIF IF 工资1000 X=X+1 ENDIF Y=Y+1ENDSCANUSE ?YSET TALK ON此程序的功能是: 6、执行下列程序:CLEARSET TLAK OFFA=1B=2DO P1?A,BPROCEDURE P1PRIVATE BA=5B=5?A,BRETURN程序的运行结果分别为 和 。二、填空题1单命令方式具体包括 、 、 。2程序的三种基本控制结构为 、 、 。3已知程序AA.PRG,则建立和修改该程的命令为 。4执行当前程序编辑窗口内程序的快捷键为 。5当执行INPUT 请输入X: TO X命令时,输入05/03/05-2,则X值为
21、 。6格式化输入命令要与 命令配合使用。7SCAN循环中,ENDSCAN的作用是 。8调用其他程序而本身不被调用的程序称 被其他程序调用的程序称 。9RETURN、RETURN TO MASTER分别返回到 、 。10按照作用域,内存变量可分为 、 。三、选择题 1Visual FoxPro源程序文件的扩展名为();A. .PRG B. .FXP C. .MPX D. .MPR2程序中的对某一命令的注释,应置于命令右面且打头为();A. & B. * C. NOTE D. 3执行ACCEPT 请输入姓名: TO XM 时,若直接按回车键,则结果是();A. XM的值为空串 B. XM的值为0
22、C. XM的值为0 D. 系统出错4FOR循环中,当步长 B. C. D. 5过程文件应先打开再使用,其打开命令为()。A. SET TALK ON B. SET PROC TO C. SET PRINT OND. OPEN DATABASE 6不能退出正在执行程序的命令是();A. CANCEL B. EXIT C. RETURN D. QUIT7可将上层程序中同名变量隐藏起来的命令为();A. PRIVATE B. PUBLIC C. RELEASE D. CLEAR8PARAMETERS 中的参数,可以是()。A. 常量 B. 变量 C. 函数 D. 表达式9若有AA、A1、A2、A3程
23、序依次进行调用,在A3中有RETURN TO MASTER,则由A3返回到()程序。A. AA B. A1 C. A2 D. 命令窗口10要提高变量的作用域,不能采用的方法是()。A. 在高层定义变量 B. 用PUBLIC声明 C. 用PRIVATE声明 D. 在命令窗口定义四、读程序写结果1 CLEAR CH=”*”FOR I=5 TO 1 STEP -2CH=CH+CHENDFOR? CH 2 N=2I=1DO WHILE NMM=M+NN=N-20ENDDO?N,M 4 CLEARSET TALK OFFSTORE 0 TO N,SDO WHILE .T. N=N+1 S=S+N IF N=20 EXIT ENDIFENDDO? S=+STR(S,3)SET TALK ON5 SET TALK OFFCLEARA=2B=3DO SUB?A,BPROCEDURE SUBPRIVATE BA=10B=5?A,BRETURN6 M=3N=4DO B? M=,M, N=,NPROCEDURE BPRIVATE MM=1N=2RETURN7 cleafor i=1 to -1 step -10? *PPEndfor8 Cleai=-1Do while i0? *PP”i=i+1Enddo