完整版VB循环结构测试题及答案.docx
《完整版VB循环结构测试题及答案.docx》由会员分享,可在线阅读,更多相关《完整版VB循环结构测试题及答案.docx(9页珍藏版)》请在冰点文库上搜索。
完整版VB循环结构测试题及答案
循环结构测试题(四)
一:
选择题
1以下()是正确的for….nex结构。
A)forx=1tostep10
(B)forx=3to-3step-3
nextx
(D)forx=3tostep3
nexty
)
(B)I=1do
I=I+2
loopuntilI=10
(D)I=6
do
I=I-2
loopuntilI=1
nextx
(C)forx=1to10re:
….
Nextx
IfI=10thengotore
2:
下列循环语句能正常结束循环的是(
(A)I=5
do
I=I+1
LoopuntilI<0
(C)I=10
do
I=I-1
LoopuntilI<0
3:
下面程序段的运行结果为()
forI=3to1step-1
printspc(5-I);
forj=1to2*1-1
print
nextjprint
nextI
(D)A
AB
ABC
ABCD
privatesubtext1_change()
printtextl.text;
endsub
(A)ABCD(B)A
(C)AABABCABCDB
C
D
5哪个程序段不能分别正确显示1!
2!
3!
4!
的()
(A)for1=1to4
n=1forj=1toIn=n*jnextjprintnnexti
(C)N=1
forj=1to4
n=n*j
printn
nextj
(D)N=1
J=1
Dowhilej<=4n=n*jprintnj=j+1loop
:
填空题
1:
要使下列For语句循环执行20次,循环变量的初值应当是:
fork=(①)to45step—
2:
下面程序段显示(②)个“*”。
ForI=1to5
Forj=2toI
Print“*”;
Nextj
NextI
3:
下列第40句共执行了(③)次,第41句共执行(④)
30forj=1to12step3
40fork=6to2step—
41printj,k
43nextj
4:
以下程序运行后,si,sj,l,j,k的结果分别是(⑤),(©),(⑦),(⑧),(⑨),(⑽)
privatesubcommand1_click()
forl=1to2
forj=1tol
sk=0
fork=jto3
sk=sk+1
nextk
sj=sj+1
nextj
si=si+1
nextl
printsi,sj,sk,l,j,k
endsub
5:
下面程序运行后输出的结果是((11))
privatesubcommand1_click()
forl=0to3
printtab(5*l+1);”2”+l;”2”&l;
nextl
endsub
(12))
6:
下面程序运行后输出的结果是(privatesubcommand1_click()a$=”*”;b$=”$”
forI=2to4
ifImod2=0thenx$=string(len(a$)+I,b$)
else
x$=string(len(a$)+I,a$)
endif
printx$;
nextI
endsub
7:
执行下面程序,打印结果是((13)
optionexplicit
privatesubform_click()
dimIasinteger,jasinteger
j=10
forI=1tojstep2
I=I+1
J=j-I
NextI
PrintI,j
Endsub
8:
输入任意长度的字符串,要求将字符顺序倒置,例如:
将输入
“ABCDEFG”变换成“GFEDCBA”
privatesubcommand1_click()
dima$,I%,c$
a=inputbox(输“入字符串”)
n=((14))
forI=1to((15))
c=mid(a,I,1)
mid(a,l,1)=((16))
((17))=c
nextI
printa
endsub
9:
找出被3,5,7除,余数为1的最小的5个正整数。
Privatesubcommand1_click()
DimcountN%,n%
CountN=0
N=1
Do
N=n+1
If((18))then
Printn
CountN=countN+1
Endif
Loop((19))
Endsub
10:
某次大奖赛,有7个评委打分,如下程序对一名参加比赛者,输入
7个评委的打分分数,去掉一个最高分,一个最低分数,求出平均分为该参赛选手的得分。
Privatesubcommand1_click()
Dimmark!
aver!
I%,max!
min!
Aver=0
ForI=1to7
Mark=inputbox(输“入第“&I&”位评委的打分”)
IfI=1then
Max1=mark
((20))
else
ifmark((21))
elseifmark>max1then
endif
endif
((23))
nextI
aver=((24))
printaver
endsub
11:
由键盘上输入一个正整数,找出大于或等于该数的第一个质数。
Privatesubcommand1_click()
Dimm%,x%,tagasBoolean
Tag=false
X=inputbox(输“入正整数”)
Dowhilenottag
M=2
Tag=((25))
Dowhiletagand(m<(x\2))
Ifxmodm=0then((26))else((27))
Loop
Ifnottagthenx=x+1
Loop
Printx
Endsub
12:
将一个正整数分解为质因数乘机,例如:
234=2*3*3*13
privatesubcommand1_click()dimn%,factor%,firstasBooleann=inputbox(输“入一个正整数”)factor=2
first=true
do
dowhile((28))
iffirstthen
printn;”=”;factor;
else
print“*”;factor;
endif
((29))first=falseloopfactor=factor+1loopuntilfactor>nendsub
测试题(四)答案
)选择题
1
2
3
4
5
6
7
8
9
10
11
12
B
C
B
C
B
二)填空题
1:
33
2:
10
3:
4,12
4:
2,3,2,3,3,4
5:
220321422523
6:
**$$$****$$$$$
7:
13-168:
LEN(a),int(n\2),mid(a,n-l+1,1),mid(a,n-1+1,1)
9:
nmod3=1andnmod5=1andnmod7=1
untilcountN=5或whilecountN<5
10:
min1二mark;min1二mark;max1二mark
aver二aver+mark;(aver-max1-min1)/5
11:
true;tag二true;m=m+1