结构化程序设计练习题Word文档格式.docx
《结构化程序设计练习题Word文档格式.docx》由会员分享,可在线阅读,更多相关《结构化程序设计练习题Word文档格式.docx(78页珍藏版)》请在冰点文库上搜索。
![结构化程序设计练习题Word文档格式.docx](https://file1.bingdoc.com/fileroot1/2023-5/4/409061f2-7e54-4193-a7d0-1a4c49859fb4/409061f2-7e54-4193-a7d0-1a4c49859fb41.gif)
B)基于同一个类产生的两个对象可以分别设置自己的属性值
C)事件代码也可以像方法一样被显式调用
D)在新建一个表单时,可以添加新的属性、方法和事件
14.如下程序段的输出结果是(C)。
I=1
DOWHILEI<
10
I=I+2
ENDDO
?
I
A)10B)1C)11D)12
15.可以通过选择“工具”菜单中的“调试器”命令调用“调试器”,也可以使用命令(B)。
A)DEBUGB)DEBUGOUT
C)OPEND)以上都不对
16.编写程序代码的过程称为(D)。
A)顺序结构程序B)建立表文件
C)设计菜单系统D)程序设计
17.顺序执行下列命令之后,屏幕显示的结果是(A)。
INPUTTOxx
(输入逻辑常量:
.T.)
xx.AND.xx=xx
A).T.B).F.C)0D)错误信息
18.顺序执行下列命令:
t=.F.
f=.T.
n=t
y=f
y.AND..NOT.n
最后一条命令的显示结果是(C)
A)nB)yC).T.D).F.
19.在命令文件中,命令文件和被调用过程之间的参数传递要求(D)。
A)参数必须是字符型
B)参数必须是内存变量
C)过程中不能改变PARAMETERS后面的变量值
D)调用程序中WITH的参数与过程中PARAMETERS的参数一一对应
20.下列说法中正确的是(B)。
A)自定义函数是由用户编制的程序,可按函数方式调用,但函数后缀名必须是UDF
B)VisualFoxPro系统是通过对过程的相互调用建立了应用程序之间的联系
C)RETURNTOMASTER命令是在自定义函数中使用的一条返回命令
D)建立过程文件的好处是便于程序的保密
21.EXIT命令可以在(C)。
A)顺序程序中使用B)分支程序中使用
C)循环程序中使用D)任何状态下使用
22.在VFP窗口中,执行WAITTOQW命令后,按一次数字键“1”,再执行?
TYPE(“QW”)命令的结果是(C)。
A)1B)QWC)CD)N
23.对于IF语句和IIF函数,下列叙述正确的是(A)。
A)用IIF函数完成的操作完全可以用IF语句完成
B)用IF语句完成的操作完全可以用IIF函数完成
C)IIF函数不能够在程序中使用,IF语句可以
D)IF语句可以自身嵌套,IIF则不可以
24.在下面的循环结构中,如果<
循环体N>
中没有再包含其他的循环命令,则下面的循环结构是(B)。
DOWHILE<
条件1>
<
循环体1>
DOWHILE<
条件2>
循环体2>
循环体3>
条件3>
循环体4>
循环体5>
A)1重循环B)2重循环C)3重循环D)错误的循环结构
25.INPUT命令允许输入的数据为(D)。
A)数据型、备注型、字符型以及表达式中已赋过值的变量
B)字符型、数值型、备注型以及表达式中未赋过值的变量
C)字符型、日期型、数值型以及表达式中未赋过值的变量
D)字符型、数值型、逻辑型以及表达式中已赋过值的变量
26.要为当前表所有职工增加100元工资应该使用的命令是(B)。
A)CHANGE工资WITH工资+100
B)REPLACEALL工资WITH工资+100
C)REPLACE工资WITH工资+100
D)CHANGEALL工资WITH工资+100
27.语句″RETURNTOMASTER″的含义是(A)。
A)返回到主程序调用B)返回到上级调用
C)结束程序运行D)挂起正在运行的程序
28.在永真条件DOWHILE.T.的循环中,为退出循环可使用(B)。
A)LOOPB)EXITC)CLOSED)CLEAR
29.执行下述命令
a=″8″
aa=[a]+a
USE&
aa
问现在打开的表文件是(D)。
A)AAB)AAAC)8AD)A8
30.以下有关VFP过程文件的叙述,其中正确的是(D)。
A)先用SETPROCEDURETO命令关闭原来已打开的过程文件,然后用DO<
过程名>
执行
B)直接用DO<
执行
C)先用SETPROCEDURETO<
过程文件名>
命令打开过程文件,然后用USE<
D)先用SETPROCEDURETO<
命令打开过程文件,然后用DO<
执行其中的过程
31.设数据表有5个字段,分别是设备编号(字符型),设备名称(字符型),设备类型(字符型),设备数量(数值型),设备单价(数值型),记录指针向一个非空的记录,顺序执行下列命令后,数组元素的值分别是(B)。
DIMENSIONsb(3)
SCATTERTOsb
LISTMEMORY
A)都是一串"
*"
号,表示数据溢出
B)自动重建数组为sb(5),各元素值分别是当前记录各字段的值
C)sb
(1),sb
(2),sb(3)分别是当前记录的前3个字段值
D)sb
(1),sb
(2),sb(3)分别是从当前记录开始的连续3个记录的设备编号
32.在下面的DO循环中,循环次数是(D)。
m=6
n=1
DOWHILEn<
=m
n=n+1
A)2B)7C)5D)6
33.阅读下列程序段,选出正确的结果(A)。
SETTALKOFF
CLEAR
STORE0TOa,b,n
f=.T.
DOWHILEf
a=a+1
DOCASE
CASEINT(a/3)<
>
a/3
b=b+a
CASEa>
EXIT
CASEa<
=10
ENDCASE
ENDDO
?
n,b
SETTALKON
RETURN
A)n=3b=48B)n=4b=48
C)n=3b=27D)n=4b=27
34.下列语句中,不属于循环结构的是(A)。
A)IF...ENDIFB)DO...ENDDO
C)FOR...ENDFORD)SCAN...ENDSCAN
35.读下列程序段:
SETTALKOFF
t="
ABCDEFG"
a=1
DOWHILEa<
6
?
SUBSTR(t,6-a)+SPACE
(2)
SETTALKON
RETURN
执行此程序段后,在屏幕上将显示(A)。
A)EFGDEFGCDEFGBCDEFGABCDEFG
B)ABCDEFG
C)ABCDEFG
D)DEFDEFDEFDEFDEFDEF
36.读下列程序段:
a=1
DOWHILE.T.
IFa>
=50
ENDIF
ENDDO
a
(1)问:
执行该程序后变量a的值是_。
(2)问:
执行该程序后,语句a=a+1共执行了。
(B)
A)49,50次B)50,49次
C)51,51次D)52,52次
37.下面程序执行结果是(A)。
X=5
Y=6
Z=7
IFX>
Y
IFZ>
8
X=X+Y
ELSE
X=X+Z
X
A)5B)11C)12D)13
38.下面这个自定义函数f(n)的功能是(A)。
PARAMETERn
STORE1TOf
DOWHILEn>
STOREf*nTOf
STOREn-1TOn
RETURNf
A)f(n)=n!
B)f(n)=(n+1)!
C)f(n)=(n-1)!
D)f(n)=nn
39.执行下列程序的结果是(D)。
S=1
FORN=1TO8STEP2
S=S*N
ENDFOR
S
A)36B)16C)40320D)105
40.有以下程序段
js="
*+-"
=LEN(js)
m=SUBSTR(js,n,1)
x=4&
m.2
y=2&
m.1
x&
m.y
(1)当n=3时,m的值为(B)。
A)"
+"
B)"
-"
C)"
3"
D)"
+-*"
(2)执行程序所显示的结果为(A)。
A)16,9,1B)24,8,4C)9,12,18D)32,24,8
41.有一主程序main.prg和过程文件M1,M2,M3
*main.prg*pro.prg
SETTALKOFFPROCEDUREM1
i=1PUBLICd
SETPROCEDURETOPROi=i*2+1
DOM1d=′FOX′
i,dRETURN
j=.T.
DOM2
j,kPROCEDUREM2
SETTALKONPRIVATEj
RETURNj=i*2+1
k=′K′
DOM3WITHk
?
j,k
RETURN
PROCEDUREM3
PARAMETERSk
k=d+′PRO′
(1)main.prg中?
i,d结果为(C)。
A)出错信息B)1,FOXC)3,FOXD)3,‘FOX’
(2)M2.prg的?
j,k结果为(D)。
A).T.16/12/99B)716/12/99
C).T.FOXPROD)7FOXPRO
(3)main.prg中?
j,k结果为(C)。
A)7FOXPROB).T.“FOXPRO”
C).T.未定义D).T.16/12/99
(4)PRIVATEj的作用是,定义变量J为(D)。
A)字段变量B)参数C)全局变量D)私有变量
(5)PARAMETERSk的作用是,定义变量K为(B)。
A)字段变量B)参数C)全局变量D)局部变量
42.阅读程序,并作选择:
USESTUDENT
INDEXON–英语TOSTUDENT
CLEAR
i=1
DOWHILEi<
=5
IF性别=′女′
?
学号+SPACE(5)+姓名+SPACE(5)+STR(英语,4)
i=i+1
ENDIF
SKIP
?
′I=′+STR(i,3)
RELEASEALL
USE
(1)程序的执行结果为,查询STUDEND数据表中:
(C)
A)前5名学生的英语成绩B)后5名学生的英语成绩
C)前5名女生的英语成绩D)后5名女生的英语成绩
(2)循环结束,循环变量i的结果为:
(D)
A)0B)1C)5D)6
(3)命令CLEAR的作用是(A)
A)清屏B)清除所有内存变量
C)清除所有字段变量D)关闭数据表
(4)命令RELEASEALL的作用是(B)
43.有以下程序段
x=12
y=23
b=′101011′
n=LEN(b)
=n
c=SUBSTR(b,i,1)
IFVAL(c)=1
sf=′*′
ELSE
sf=′+′
ss=′x′+′&
′+′sf.′+′y′
′结果′+STR(&
ss,4)
x=x+2*i
y=y+I
i=i+1
(1)第一次循环的输出为(A)。
A)276B)53C)38D)458
(2)第四次循环sf的值为(C)。
A)+B)*C)′+′D)′*′
(3)循环中x的最后值为(B)。
A)24B)54C)12D)64
44.执行下列程序:
CLEAR
X=5
FORI=1TO50
IFX%2=1
X=X+5
LOOP
X=X-3
ENDFOR
REYURN
显示X的值是(D)。
A)27B)8C)9D)10
45.执行下面程序
FORI=10TO1STEP-2
IFI%3#0
I=I-1
ENDIF
I=I-2
则I的值是(A)。
A)72B)74C)61D)84
46.有数据表文件XSCJ.DBF中有8000条记录,其结构是姓名(C,8),成绩(N,6,2)。
有命令文件如下:
USEXSCJ
j=0
DOWHILE.NOT.EOF()
j=j+成绩
SKIP
"
平均分"
+STR(j/8000,6,2)
运行该程序,屏幕上显示(A)。
A)平均分:
XXX.XX(X代表数字)B)数据类型不匹配
C)平均分:
j/8000D)字符串溢出
47.设CJ.DBF数据表有2条记录,内容如下:
Record#XMEF
1李四500.00
2张三600.00
有程序段如下:
USECJ
M->
EF=O
EF=M->
EF+EF
M->
EF
该程序执行的结果是(A)。
A)1100.00B)1000.00C)1600.00D)1200.00
48.执行如下命令序列
SETTALKOFF
STORE1999TOa
STORE″1999″TOb
STORE″A″TOm
&
m+&
b
最后的输出结果是(D)。
A)A1999B)语法错C)19991999D)3998
49.每个过程的第一条语句是(D)。
A)PARAMETERB)DO<
C)<
D)PROCEDURE<
50.下面程序是一个嵌套循环,执行该程序:
A=0
DOWHILEA<
=3
B=0
DOWHILEB<
=4
C=1
DOWHILEC<
=8
Y=100*A+10*B+C
IFY=1*A+2*B+5*C
C=C+1
B=B+1
A=A+2
程序的运行结果是(A)。
A)12243648B)12342646
C)14243646D)14342648
51.可以用MODIFYCOMMAND命令建立命令文件的缺省扩展名是(C)。
A).TXTB).FMTC).PRGD).BAK
52.调用程序和被调用程序之间的数据传递要求(C)。
A)由WITH提供的参数必须是变量
B)被调用程序中不能改变PARAMATERS指定的变量值
C)调用程序和被调用程序中的参数必须一一对应
D)由WITH提供的参数不能为逻辑型
53.以下程序段的功能是(B)。
n=26
=1
CHR(64+n)
n=n-1
A)正序显示26个大写英文字母B)逆序显示26个大写英文字母
C)正序显示26个小写英文字母D)逆序显示26个小写英文字母
54.有以下程序段:
*FF1.PRG
a=4
b=5
c=6
DOFF2WITH12,b+c,a
"
a="
a
*FF2.PRG
PARAl,m,n
l=l+3
a=m+4
n=b+5
l="
l
执行DOFF1.PRG命令后,屏幕显示的结果是(B)。
A)a=15B)l=15C)l=14D)a=16
l=15a=10a=15l=15
55.下列是关于条件分支的程序段,其中的错误是(B)。
bb="
ASB"
IF.NOT.bb
A)缺IFB)条件错
C)IF和ELSE之间缺少命令D)IFELSE-ENDIF格式错
56.下列说法中错误的是(C)。
A)事件既可以由系统引发,也可以由用户激发
B)事件集合不能由用户创建,是惟一的
C)事件代码既能在事件引发时执行,也能够像方法一样被显示出来
D)在容器对象的嵌套层次里,事件的处理应遵循独立性原则,即每个对象识别并处理属于自己的事件
57.有如下主程序和子程序
主程序MAIN.PRG子程序SUB.PRG
SETTALKOFFPRIVATEk
CLEARk="
222"
k="
111"
k=k+"
333"
DOSUB?
k
kRETURN
执行命令DOMAIN后,屏幕上显示的结果为(B)。
A)111B)222333C)111222D)333222
222333111333111
58.在对象方法的引用中,正确的表示为(C)。
A)THISFORM.Command1B)THISFORM.Command1.Caption
C)THISFORM.release D)thisform.Command1.Caption="
确定"
59.关于事件,错误的是(C)。
A)一种预先定义好的特定动作,由用户或系统激活
B)VFP基类的事件是系统预先定义好的,是唯一的
C)VFP基类的事件可以由用户自定义
D)可以激活事件的用户动作包括击键、单击鼠标、移动鼠标等
60.关于属性,正确的是(A)。
A)只是对象的内部特征
B)是对象的固有特性,用各种类型的数据表示
C)是对象的外部特性
D)属性是对象固有的方法
61.以下关于VisualFoxPro类的说法,不正确的是(B)。
A)类具有继承性和封装性
B)用户必须给基类定义属性,否则出错
C)子类一定具有父类的全部属性
D)用户可以按照已有的类派生出多个子类
62.下面关于“类”的描述,错误的是(C)。
A)一个类包含了相似的有关对象的特征和行为方法
B)类只是实例对象的抽象
C)类可以按所定义的属性、事件和方法进行实际的行为操作
D)类并不进行任何行为操作
63.类是一组具有相同属性和相同操作的对象集合,类之间共享属性和操作的机制称为(D)。
A)多态性B)动态绑定C)静态绑定D)