最新VB循环结构练习题资料
vba循环练习题

vba循环练习题在本文中,将为您展示一些VBA循环练习题。
VBA(Visual Basic for Applications)是一种用于创建宏的编程语言,广泛应用于Microsoft Office套件中的各种应用程序,如Excel、Word和PowerPoint等。
通过编写VBA代码,可以自动执行重复的任务,提高工作效率。
以下是一些常见的VBA循环练习题,供您练习和学习。
练习一:使用For循环输出1到10之间的偶数在Excel中新建一个模块,输入以下VBA代码:```Sub PrintEvenNumbers()Dim i As IntegerFor i = 1 To 10If i Mod 2 = 0 ThenDebug.Print iEnd IfNext iEnd Sub```运行此代码(按F5键),你将看到输出窗口中显示了2、4、6、8和10这五个偶数。
这段代码通过For循环遍历1到10的所有数字,使用If语句判断是否为偶数,如果是偶数则输出。
练习二:使用Do While循环计算1到100之间所有奇数的和在Excel中新建一个模块,输入以下VBA代码:```Sub CalculateOddSum()Dim i As IntegerDim sum As Integeri = 1sum = 0Do While i <= 100If i Mod 2 <> 0 Thensum = sum + iEnd Ifi = i + 1LoopMsgBox "1到100之间所有奇数的和为:" & sumEnd Sub```运行此代码(按F5键),将会弹出一个消息框显示1到100之间所有奇数的和为 2500。
这段代码使用了Do While循环,从1开始遍历到100的所有数字,如果是奇数则累加到sum变量中。
练习三:使用For Each循环遍历Excel工作表中的所有单元格在Excel中新建一个模块,输入以下VBA代码:```Sub IterateCells()Dim ws As WorksheetDim cell As RangeSet ws = ThisWorkbook.ActiveSheet '假设要遍历的是当前活动工作表For Each cell In edRange'在这里编写对单元格的操作,例如:'cell.Value = cell.Value * 2Next cellEnd Sub```运行此代码(按F5键),将会遍历当前活动工作表的所有单元格。
循环结构练习题

循环结构练习题1、Visual Basic 程序段如下:该程序段运行后,变量s的值是()s=0For k=1 To 5s=s+5Next k(A) 0 (B) 5 (C) 10 (D) 252、应用计算机程序解决数学问题“求一元二次方程实数解”的步骤,通常是()。
A. 设计算法→编写程序B. 编写程序→调试程序→检测结果C. 分析问题→设计算法→编写程序→调试运行→检测结果D. 编写程序→调试运行3、“=”在Visual Basic程序中既可以表示赋值操作,也可以表示关系运算。
右图程序段中“=”作用和⑤相同的是A.①B.②C.③D.④4、用计算机解决问题时,首先应该确定程序“做什么?”,然后再确定程序“如何做?”请问“如何做?”是属于用计算机解决问题的哪一个步骤?()A.分析问题B.设计算法 C.编写程序D、调试程序5、流程图中表示判断的是()。
A.矩形框B.菱形框C.圆形框D.椭圆形框6、任何复杂的算法都可以用三种基本结构组成,下列不属于基本结构的是()A.顺序结构B.选择结构C.层次结构D.循环结构7、执行完循环语句For x=1 to 100 step 2Next x 后,x的值是()A.101 B.100 C.99 D.988、下列给出的赋值语句中正确的是()。
A.4 = M B.-M =M C.B=A-3 D.x + y = 0 9、以下程序中的循环体执行的次数是( )。
For A=1 To 100 Step 2S=S+ANext APrint SA.48 B.49 C.50 D.5110、下列程序代码中,循环体执行的次数是( )。
y = 1Do While y <= 6y = y+yLoopA、2B、3C、4D、511、有如下VB程序,其结构为( )。
Dim i As Integer, sum As Doublesum=0For i = 1 To 100sum =sum+1/iNext iPrint "sum= " & sumA、顺序结构B、分支结构C、循环结构D、选择结构12、阅读如下VB程序段,运行程序后,当n的值为5时,a的值为______。
VB循环结构上机题

循环结构及常见算法
作业1:求1×1+2×2+…+100×100之和。
作业2:求1+(1×2)+(1×2×3)+…+(1×2×3×…×n)的值。
n 由用户指定。
作业3:输入任意一个正整数,将其反向输出。
如输入1234,输出4321。
作业4:求圆周率∏的近似值。
公式为4∏= 1-31+51-71…+(-1)(n+1)×121-n ,直到最后一项的绝对值小于0.0001 为止。
(累加算法)
提示:先用公式计算,最后乘个4就是圆周率∏的结果,结果为:3.141397 方法一:
方法二:
作业5:若口袋里放12个球,3个红的,3个白的,6个黑的,从中任取8 个,编写程序,列出所有可能的取法。
(穷举算法)
作业6:有一分数序列
12、23、35、5
8……,求这个数列前20 项之和。
(迭代/累加算法)
提示:运行结果为32.66026
作业7:求S=a+aa+aaa+…+aaa(n个a)。
其中a是一个随机函数产生的[1,9]的一个整数,n 是一个随机函数产生的[2,9]之间的一个整数。
如a=2,n=4,则求S=2+22+222+2222。
(迭代/累加算法)。
VB编程题(循环部分总结题目

循环部分1. 求自然数1~100之间奇数之和。
2. 求自然数1~100之间偶数之和。
3. 编程计算从200到1000之间的所有4的倍数之和。
4. 编程计算从300到1000之间的所有7的倍数之和。
5. 编写程序在窗体上显示出:5/6+4/5+3/4+2/3+1/26. 编写程序,通过InputBox函数从键盘上输入4个数,计算并在窗体上显示这4个数的和及平均值。
7. 在窗体的单击事件过程中,编写程序计算1!+2!+3!+ (20)8. 有一个窗体,窗体中有一个文本框,名称为Text1,有一个按钮,试编写按钮的单击事件,实现计算1!+2!+3!+…+10!,将结果显示在文本框Text1中。
( 或参照 7 用教材:P86 [例4-21] 方法 )9. 编写程序计算:s=1+1/2!+1/3!+…+1/n!,说明:在窗体中有一个文本框控件:Text1,用来接收n的值,有一个标签控件:Label1,用来显示S的值,试编写窗体的单击事件,实现计算与显示功能,只要求写出事件的主要代码,事件过程的起始语句和结束语句可略去。
( 或参照7 用教材:P87 [例4-22] 方法 )10. 编写程序,在窗体上输出由1、2、3、4、5这五个数字组成的所有可能的两位数,并统计它们的个数。
说明: 程序中红色标示的部分控制每行输出5个数11. 求s=a+aa+aaa+…+aaa…aaa(n个a),其中a和n的值由用户自己输入。
例如,当a=3,n=4时,S=3+33+333+3333。
12. 在窗体上输出下三角的九九乘法表。
13. 编写程序,将26个字母逆序输出。
14. 编写程序,将字符串"山高人为峰"按逆序"峰为人高山"输出。
15. 设纸的厚度为0.5毫米,将纸对折,再对折…,求至少对折多少次,纸张的厚度能达到珠穆朗玛峰的高度8848米。
16. 编写程序,求s的值,s=1×2×3+2×3×4+…+n×(n+1)×(n+2)的值。
VB 第七章 循环结构练习随堂练习

第七章循环部分练习题一、选择1、下列正确的语句是______________A) FOR X=1 TO 10 STEP -2 B) FOR X$=1 TO 9 STEP 3C) FOR 1X=10 TO 100 STEP 10 D) FOR X1=10 TO 502、执行以下程序段后,I的值为______________I=0FOR G=10 TO 19 STEP 3I=I+1NEXT GA)4 B)5 C)3 D)63、以下第30语句执行次数为______________FOR I=1 TO 3FOR J=5 TO 1 STEP -1PRINT I*JNEXT J,IA)15 B)16 C)17 D)184、下述程序共执行______________次循环FOR I=7 TO 90 STEP 5PRINT I;NEXT IA)14 B)15 C)16 D)175 、下列程序运行时输出的结果是______________E=1:F=1FOR J=1 TO 3E=E+F:F=F+ENEXT JPRINT E;FA)6 6 B)5 8 C)13 21 D)24 556、下列程序运行时输出的结果是______________Y=3FOR K=1 TO 5 STEP -1Y=Y+KNEXT KPRINT Y;KA)3 1 B)1 3 C)-1 6 D)4 17、下列程序分别输入1,-2,9,0,-1,9运行时输出的结果是______________ Do while abs(l)<>3K=inputbox(“请输入数据:”)FOR I=1 TO K STEP -2L=I+KNEXT IPRINT LloopA)-3 B)3 C)2 D)22 23 -38、下列程序运行时分别输入5,9,8,2,-999输出的结果是______________B=0X=inputbox(“请输入数据”)Do WHILE X<>-999IF X>B THEN B=XX=inputbox(“请输入数据”)loopPRINT ABS(X)A)9 B)8 C)2 D)9999、有如下程序a$="AaBbCcDdEe":b$="12345"FOR j=1 to 5 STEP 2PRINT MID$(a$,j,1)+MID$(b$,(j+1)/2,1);NEXT jA) A1B2C3 B) AaB123 C) a1b2c3 D) A1a2B310、下列程序运行时输出的结果是______________FOR K=1 TO 3IF K<=1 THEN A=2*KIF K<=2 THEN A=2*K+1IF K<=3 THEN A=KPRINT K;A;NEXT KA)1 2 2 5 3 3 B)1 1 2 2 3 3C)3 3 3 3 3 3 D)1 3 2 3 3 311、下列程序运行时输出的结果是______________FOR I=10 TO 6 STEP -1NEXT IPRINT IA)4 B)5 C)6 D)712、下列程序运行时输出的结果是______________K=0FOR I=1 TO 3A=I^I^KPRINT A;NEXT IA)1 1 1 B)1 4 9 C)0 0 0 D)1 2 313、下列程序运行时输出的结果是______________X=0WHILE X<20X=X+1X=X*XWENDPRINT XA)16 B)19 C)20 D)2514、下列程序运行时输出的结果是______________X=6FOR K=1 TO 8 STEP -3X=X+KNEXT KPRINT K,XA)6 1 B)-1 9 C)1 6 D)6 715、下列程序运行时输出的结果是____________N=0FOR I=1 TO 4FOR J=1 TO IFOR K=J TO 3N=N+1NEXT KNEXT J,IPRINT NA)20 B)22 C)30 D)4016、有如下程序a$="France"m$=MID$(a$,3,2)FOR j=1 to 5b$ =inputbox(“请输入:”)e=INSTR(b$,m$)s=s+eNEXT jPRINT s运行后输入内容Iran,China,Japan,Afghanistan,Guyana 输出结果是A) 5 B) 11 C) 16 D) 2117、有如下程序n=3FOR K=3 TO 1 STEP -1x$=STRING$(k,"!")PRINT n; x$;n=n-1NEXT KEND运行时输出的结果是A)3!!!2!!1! B)1!2!!3!!! C)3!!2! 1 D)2!!!1!!0!18、下列程序运行时输出的结果是______________FOR I=1 TO 8FOR I=1 TO 8NEXT JNEXT IPRINT I;A)1 2 3 4 5 6 7 7 B)2 2 2 2 2 2 2 2C)3 3 3 3 3 3 3 3 D)1 2 3 4 5 6 7 819、下列程序运行时输出的结果是______________Y=2FOR K=1 TO 9 STEP -2Y=Y+KNEXT KPRINT Y;KA)1 2 B)2 2 C)3 3 D)2 120、下列程序运行时输出的结果是______________N=1doFOR K=1 TO NPRINT "*"NEXT KPRINTN=N+1IF N>1 THEN endLoop while N=1A)* B)* * C)* * * D)* * * *21、下列程序运行时输出的结果是______________S=0FOR I=1 TO 3S=S+I^2NEXT IPRINT "S=";SA)S=10 B)S=12 C)S=15 D)S=1422、有如下程序FOR j=1 TO 10x=2*j-1IF x/3=x\3 OR x/5=x\5 THEN s=s+xNEXT jPRINT "s=";s运行后输出S的值是A) 27 B) 15 C) 32 D) 2023 、下列程序运行时内层循环的循环总次数是______________.FOR X=1 TO 2FOR Y=0 TO X-1NEXT YNEXT XA)1 B)2 C)3 D)424 、以下______________是正确的FOR-NEXT循环结构.A) FOR X=1 TO STEP 0.1...FOR Y=1 TO STEP 0.2...NEXT X...NEXT YB) FOR I=1 TO 10...NEXT JC) FOR I=N1 TO N2...NEXT I...IF I=0 THEN 50D) X=10FOR I=3 TO -3 STEP -1PRINT X^I...NEXT I25、下列程序运行时输出的结果是______________FOR K=1 TO 4Ak=inputbox(“”)NEXT KFOR K=1 TO 4PRINT AKNEXT KDATA 37,23,46,59A)37 B)59 C)37 D)37 23 46 5923 59 3746 59 3759 59 3726、下列程序运行时输出的结果是______________K=1FOR J=1 TO 5K=K*JNEXT JPRINT K*JA)600 B)120 C)720 D)2527、下列程序运行时输入10输出的结果是______________N=inputbox(“请输入数据“)FOR J=1 TO NK=1K=K*JNEXT JPRINT J;KA)10 11 B)10 20 C)11 10 D)11 128、下列程序运行时分别输入-1,1,-2,2,0输出的结果是______________ A=0:B=0:T=0WHILE T<5X=inputbox(“请输入数据:”)IF X>0 THEN A=A+X ELSE B=B+XT=T+1WENDPRINT "A=";A,"B=";BA)A=3 B=-3 B)A=-3 B=3C)B=3 A=-3 D)B=-3 A=329、下列程序运行时分别输入2,-2,6,9,10输出的结果是______________ A=5FOR A=10 TO 30 STEP 3X=inputbox(“请输入数据:”)K=X+1IF K>=5 THEN endPRINT INT(A/X),NEXT AA)5 7 B)5 -7 C)5 -6 D)2 1030、下列程序运行时输出的结果是______________FOR K=1 TO 3IF K<=1 THEN A=3IF K<=2 THEN A=2IF K<=3 THEN A=1PRINT A;NEXT KPRINT KA)1 1 1 4 B)3 2 1 4 C)3 3 3 3 D)1 2 3 431、下列程序运行时输出的结果是______________A=5:B=10:C=1FOR I=A TO B STEP CPRINT I;A=1:B=3:C=2NEXT IPRINTPRINT A;B;CA)1 3 2 B)1 3 2 C)5 6 7 8 9 10 D)5 6 7 8 9 101 32 5 7 9 13 2 5 10 132、下列程序运行时输入数据5,9,8,2,-99输出的结果是______________B=0X=inputbox(“请输入数据:”)30 WHILE X<>-9940 IF X>B THEN B=XX= inputbox(“请输入数据:”)WENDPRINT B;PRINT ABS(X)A)9 9 B)8 8 C)9 99 D)9 -9933、下列程序运行时输入9,-99999,9,8,3,-9999输出的结果是______________ X=0Y=inputbox(“请输入数据:”)WHILE Y<>-99999 AND X<>3IF Y>X THEN X=YY=inputbox(“请输入数据:”)WENDPRINT ABS(Y)A)9 B)-99999 C)3 D)9999934、下列程序运行时输出的结果是______________FOR I=2 TO 10 STEP 2PRINT I;NEXT IPRINTPRINT "I=";IA)1 3 5 7 9 B)1 2 3 4 5I=12 I=6C)2 4 6 8 10 I=12 D)2 4 6 8 10I=1235、下列程序运行时输出的结果是______________SUM=0FOR J=6 TO 10SUM=SUM+JNEXT JPRINT SUMA)15 B)35 C)40 D)5536、下列程序运行时输出的结果是______________FOR L=1 TO 3A=A+1FOR J=1 TO LA=A+1NEXT JA=A+1NEXT LPRINT AA)3 B)12 C)9 D)637、下列程序运行时外层、中层及内层循环次数分别是______________ FOR A=1 TO 3FOR B=1 TO AFOR C=B TO 3NEXT CNEXT BNEXT AA)21 8 6 B)3 3 3 C)3 6 14 D)8 6 338、下列程序运行时输出的结果是______________N=1For n=1 to 5FOR K=N TO 5PRINT "*";NEXT KPRINTNext nA)* * * * * B)* C)* * * * * D)* * * * ** * * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 39、下列程序运行时输出的结果是______________A=1FOR I=1 TO 100A=A*IPRINT "I=";I,"A=";AIF A>=100 THEN I=100NEXT IA)I=1 A=1 B)1 1 C)I=1 A=1 D)I=1 A=1I=2 A=2 2 2 I=2 A=2 I=2 A=2I=3 A=6 3 6 I=3 A=3 I=3 A=6I=4 A=24 4 24 I=4 A=4 I=4 A=24I=5 A=100 5 120 I=5 A=5 I=5 A=12040、下列程序运行时输出的结果是______________FOR I=19 TO 25 STEP 2FOR D=2 TO I-1IF I/D=INT(I/D) THEN exit forNEXT DIf d=I then PRINT INEXT IA)23 B)22 C)19 D)1919 19 19 2341、设自然数n=6,下列程序运行时输出的结果是______________ N=INPUTbox( "N=")FOR I=3 TO N STEP 2FOR J=2 TO I-1IF I/J=INT(I/J) THEN exit forNEXT JK=INT(I/J)FOR J=2 TO K-1IF K/J=INT(K/J) THEN exit forNEXT JPRINT I;"*";K;"=";I*KNEXT IA)1*3=3 B)2*3=6 C)2*2=4 D)3*2=61*5=5 2*3=6 5*1=542、下列程序运行时输出的结果是______________A0=0:A1=0:A2=1FOR I=1 TO 3PRINT A0,A1,A2A0=A0+A1+A2A1=A0+A1+A2A2=A0+A1+A2NEXT IA)0 0 1 B)0 0 1 C)0 0 1 D)0 0 11 2 4 1 2 4 4 2 1 1 2 4 7 13 24 1 1 22 7 11 22 22 11 7 43、下列程序运行时输出的结果是______________A=1FOR I=-1 TO -2 STEP -1FOR J=1 TO 2A=A+1NEXT JA=A+1NEXT IPRINT AA)9 B)8 C)7 D)1044、下列程序运行时输出的结果是______________X=1Y=1FOR I=1 TO 3F=X+YX=YY=FPRINT F;NEXT IA)2 3 6 B)2 2 2 C)2 3 4 D)2 3 545、下列程序运行时输出的结果是______________K=0FOR J=1 TO 2FOR I=1 TO 3K=I+1NEXT IFOR I=1 TO 7K=K+1NEXT INEXT JPRINT KA) 10 B) 6 C) 11 D) 1646、有如下程序sum=0FOR k=1 TO 10IF k=10 THEN ELSE sum=sum+kNEXT kPRINT sumEND运行后输出的结果是A) 10 B) 55 C) 45 D) 3647、下列程序是输出1-2000之间所有的阿姆斯特朗数.(阿姆斯特朗数指一个数等于其每一个数字立方之和)请在______________处选择正确答案FOR I=1 TO 2000S=0K=IWHILE K<>0Q=______________[1]R=K-10*QS=S+ ______________[2]K=QWENDIF I=S THEN PRINT INEXT I[1]A)INT(K) B)INT(K/100)C)INT(K/1000) D)INT(K/10)[2]A)K*K*K B)R*R*RC)R*R*R D)I*I*I48、下列程序用来输出101~200之间所有既不能被3整除也不能被8整除的数,请在______________填入正确的内容FOR X=101 TO 200 STEP ______________[1]IF X/3=INT(X/3) ______________[2] X/8=INT(X/8) THEN 40PRINT X,NEXT X[1]A)1 B)3 C)8 D)3*8[2]A)NOT B)OR C)AND D)<>49、下列程序是输出1,1,2,3,5,8,13……的前20项,请在______________填入正确的内容X1=1:X2=1N=0WHILE ______________[1]PRINT X1,X2______________[2]X2=X1+X2: N=N+1WENDA) N<=10 B)N<9 C)N<10 D)N<20A) X1=X1+X2 B)X2=X1+X2 C)X1=X1+N D)X2=X2+N50、如果我国的工农业产值每年以9%增长率增长,问几年后我国产值翻一番,请在______________填入正确的内容P=100R=0.09N=0WHILE P<200P=______________[1]N=______________[2]WENDPRINT N ;"YEARS","P=";P[1]A)1+R B)P*(1+R) C)P*R D)P+1[2]A)N B)P+N C)N+1 D)P51、用近似公式求自然对数的底e 的值!1!31!21!111N e +++++= ,请在______________填入正确的内容T=1E=1N =INPUTbox( "N=")FOR I=1 TO NT=______________[1]E=______________[2]NEXT IPRINT "e=";E[1]A)T+1 B)E+1 C)T*I D)1/T[2]A)1/T B)E+T C)1/E D)E+1/T52、已知任意N 个不相等的数,求所有大于M 的数的和及平均值,请在______________填入正确的内容M=inputbox(“输入一个数”)N=inputbox(“输入一个数”)J=0:S=0FOR I=1 TO NX=INPUTbox(“ X=”)IF X>M THEN S=S+X:______________[1] NEXT IIF J=0 THEN ______________[2]V=S/JPRINT S,V:IF I=1 THEN endPRINT "ALL<=M"[1]A)J=J-1 B)J=J+1 C)J=J D)J=J+1[2]A)90 B)110 C)100 D)20053、计算∑=+nii13/4)12(1的值53/410)12(1-<+i时,输出表达式的值及累加的项数,请在______________填入正确的内容S=0:I=1WHILE ______________[1]S=S+1/(2*I+1)^(4/3)______________[2]WENDPRINT S,I-1[1]A)1/(2*I+1)^(4/3)<1E-5 B)1/(2*I+1)^(4/3)<=1E-5C)1/(2*I+1)^(4/3)<>1E-5 D)1/(2*I+1)^(4/3)>=1E-5[2] A)I=I+2 B)I=I-1 C)I=I+1 D)I=154 、有如下程序j=0: n=0WHILE n<3j=(j+1)*(j+2) : n=n+1WENDPRINT j; n运行后输出的结果是A) 0 1 B) 182 3 C) 30 4 D) 3 355 、有如下程序n=3FOR K=3 TO 1 STEP -1x$=STRING$(n,"$") :PRINT k; x$n=n-1NEXT K运行后输出的结果是A) 3 $$$ B) 1 $ C) 3 $ D) 1 $2 $$ 2 $$ 2 $$ 2 $$1 $ 3 $ 1 $$$ 3 $$$ 56、有如下程序sum=0FOR m=1 TO 3IF m<=1 THEN a=1 ELSE IF m<=2 THEN a=2 ELSE IF m<=3 THEN a=3 ELSE a=4PRINT a;sum=sum+aNEXT mPRINT sumEND运行后输出的结果是A) 3 3 3 9 B) 3 2 1 6 C) 1 1 1 3D) 1 2 3 657、有如下程序FOR j=1 TO 20a=a+j\7NEXT jPRINT a在运行时输出a的值是A) 21 B) 41 C) 63 D) 21058 有如下程序运行后输出的结果是b=1a=2WHILE b<10b=2*a+bENDDOPRINT bA) 13 B) 17 C) 21 D) 3359、有如下程序输入数据75,55,45,80运行时输出的结果是a=70FOR j=1 TO 4X=inputbox(“x=”)If x<a THENb=b+x:a=xELSEb=b+aEnd ifNEXT jPRINT bENDA) 215 B) 250 C) 290 D) 28560、有如下程序运行时输出的结果是a$=”54321”:b$=”abcde”FOR j=1 TO 5PRINT MID$(a$,6-j,1)+MID$(b$,j,1);NEXT jPRINTA) a1b2c3d4e5 B) a5b4c3d2e1 C) eld2c3b4a5 D) 1a2b3c4d5e61、有如下程序运行后输出的结果是FOR j=1 TO 3PRINT TAB(3*j);11*(2*j-1);NEXT jPRINTA) 11 B) 11 C) 11 D) 11 33 5533 33 3355 55 5562、有如下程序输入数据9,8,7,6,5,4,3,2,1,0运行时输出的结果是c=4d=inputbox(“d=”)WHILE d>0IF d>c THEN c=c+1d=inputbox(“d=”)WENDPRINT c+dA) 5 B) 6 C) 7 D) 863、有如下程序运行后,输出的结果是a=0FOR j=1 TO 20 STEP 2a=a+j\5NEXT jPRINT aA) 12 B) 16 C) 40 D) 10064、有如下程序运行后的输出结果是s=0i=1do WHILE i<=100IF i MOD 10<>0 THEN s=s+i :i=i+1 ELSE i=i+1loopPRINT sA) 4050 B) 5050 C) 5000 D) 450065、有如下程序运行后输出结果是FOR m=1 TO 4a=0FOR j=1 TO 5a=1FOR k=1 TO 6a=a+3NEXT kNext jNEXT mPRINT aA) 18 B) 19 C) 90 D) 36066、有如下程序在运时输出a的值是FOR i=1 TO 3FOR j=5 TO i step -1FOR k=j TO 6a=a+1NEXT kNEXT jNEXT iPRINT aA) 12 B) 14 C) 43 D) 6067、有如下程序,运行时输出的结果是sum=0FOR k=1 TO 10IF k<=5 THEN sum=sum-k ELSE sum=sum+kNEXT kPRINT sumA)0 B)5 C)25 D)5568、有如下程序运行后输出s的值是FOR j=1 TO 30x=2*j-1IF x MOD 3=0 OR x MOD 7=0 THEN s=s+1NEXT jPRINT "s=";sA)1 B)13 C)14 D)29。
VB循环结构及数组练习

VB循环结构及数组练习一、单选题1.执行以下程序段后,i的值为(B)For i = 1 To 10 Step 2y = y + iNext iA)10 B)11 C)12 D)252.假定有如下语句:Private Sub Command1_Click()Counter = 0For i = 1 To 4For j = 6 To 1 Step -2Counter = Counter + 1Next jNext iLabel1.Caption = Str(Counter)End Sub程序运行后,结果为(B)A)11 B)12 C)16 D)203. 假定有如下语句:Private Sub Command1_Click()For i = 1 To 4If i = 1 Then x = iIf i <= 4 Then x = x +1Print x;End Sub程序运行后,结果为A)1 2 3 4 B)2 3 4 5 C)2 3 4 4 D)3 4 5 64.哪个程序段不能分别正确显示1!、2!、3!、4!的值(B)A)For i = 1 To 4n = 1For j = 1 To in = n * jNext jPrint nNext iB)For i = 1 To 4For j = 1 To in = 1n = n * jNext jPrint nNext iC)n = 1For j = 1 To 4n = n * jPrint nNext jD)n = 1: j = 1Do While j <= 4n = n * jPrint nj = j + 1Loop5. 编写如下的事件过程:Private Sub Command1_Click()For i = 1 To 4For j = 0 To iPrint Chr$(65 + i);Next jPrintNext iEnd Sub程序运行后,在窗体上显示的内容是(A)A)BB B)A C)B D)AA CCC BB CC BBB DDDD CCC DDD CCCC EEEEE DDDD EEEE DDDDD6. 编写如下的事件过程:Private Sub Command1_Click()Dim x,n As Integerx = 1n = 0Do While x < 20x = x * 3n = n + 1LoopText1.Text = Str (x)Text2.Text = Str (n)End Sub运行程序后,在2个文本框中显示的值分别是(B)A)20和1 B)27和3 C)195和3 D)600和47. 编写如下的事件过程:Private Sub Command1_Click()Dim i,n As IntegerFor i = 0 To 50i = i + 3n = n + 1If i > 10 Then Exit ForNextText1.Text = Str (n)End Sub运行后,文本框中显示的值是(B)A)2 B)3 C)4 D)58. 编写如下的事件过程:Private Sub Command1_Click()c = 1234c1 = Trim (Str(c))For i = 1 To 4Print ________NextEnd Sub运行程序后,窗体上显示如下11 21 2 31 2 3 4则应该在________处填写的表达式是(B)A)Right (c1,n) B)Left (c1,i) C)Mid (c1,n,1) D)Mid (c1,n,n)9. 编写如下的事件过程:Private Sub Command1_Click()n = Val (Text1.text)For i = 2 To nFor j = 2 To Sqr(i)If i Mod j = 0 Then Exit ForNext jIf j > Sqr(i) Then Print iNext iEnd Sub该事件过程的功能是:(C)A)输出n以内的奇数B)输出n以内的偶数C)输出n以内的素数D)输出n以内能被j整数的数10. 编写如下的事件过程:For i = 1 To 3For j = 5 to 1 Step -1Print i*jNext j,i则语句Print i*j 的执行次数是(A)A)15 B)16 C)17 D)1811.以下程序段输出结果为(B)x = 1y = 4Do Until y > 4x = x * yy = y + 1LoopPrint xA)1 B)4 C)8 D)2012.执行下面的程序段后,x的值为(A)x = 5For i = 1 To 20 Step 2x = x + i\5Next iA)21 B)22 C)23 D)2413. 编写如下的事件过程:Private Sub Command1_Click()For i = 1 To 4x = 4For j = 1 To 3x = 3For k = 1 To 2x = x + 6Next kNext jNext iPrint xEnd Sub程序运行后,输出结果是(B)A)7 B)15 C)157 D)538 14.有如下的程序段:For i = 1 To 3For j = 1 To ia = a + 1Next jNext i执行上面程序后,a的值为(C)A)3 B)9 C)6 D)2115.有如下的程序段:n = 0For i = 1 To 3For j = 1 To iFor k = j To 3n = n + 1Next kNext jNext i执行上面程序段后,n的值为:(B)A)3 B)14 C)9 D)2116.阅读程序Private Sub Form_Click()x = 50For i = 1 To 4y = InputBox (“请输入1个整数”)y = Val (y)If y Mod 5 = 0 Thena = a + yx = yElsea = a + xEnd IfNext iPrint aEnd Sub程序运行后,单击窗体,在输入对话框中依次输入15、24、35、46,输出结果为(A)A)100 B)50 C)120 D)701.如有以下程序代码:Option Base 1Private Sub Command1_Click()d = 0c = 10x = Array(10, 12, 21, 32, 24)For i = 1 To 5If x(i) > c Thend = d + x(i)c = x(i)Elsed = d - cEnd IfNext iPrint dEnd Sub程序运行后,在窗体上输出的内容为(C)A)89 B)99 C)23 D)772.下面语句定义的数组元素个数中(C)Dim arr(3 To 5, -2 To 2)A)20 B)12 C)15 D)243. 下面语句定义的数组元素个数中(D)Dim a(-3 To 4, 3 To 6)A)18 B)28 C)21 D)324. 如有以下程序代码:Private Sub Command1_Click()Dim arr1(10), arr2(10)For i = 1 To 10arr1(i) = 3 * iarr2(i) = arr1(i) * 3Next iText1.Text = Str(arr2(i / 2 - 0.1))End Sub程序运行后,在文本框显示的是(B)A)36 B)45 C)54 D)635. 如有以下程序代码:Option Base 1Private Sub Command1_Click()Dim aa = Array(1, 2, 3, 4)j = 1For i = 1 To 4s = s + a(i) * jj = j * 10Next iPrint sEnd Sub运行程序后,在窗体上输出的内容为(D)A)1234 B)12 C)34 D)43216. 如有以下程序代码:Private Sub Command1_Click()Dim array1(10, 10) As IntegerDim i, j As IntegerFor i = 1 To 3For j = 2 To 4array1(i, j) = i + jNext jNext iText1.Text = array1(2, 3) + array1(3, 4)End Sub运行程序后,在窗体上输出的内容为(A)A)12 B)13 C)14 D)157.假设通过复制、粘贴建立了一个命令按扭数组Command1,则以下说法错误的是(D)A)数组中每个命令按扭的名称(Name属性)均为Command1B)数组中每个命令按扭的大小都一样C)数组中每个命令按扭可以使用同一个时间过程D)用名称Command1可以访问数组中每个命令按扭8. 如有以下程序代码:Private Sub Command1_Click()Dim arr1(10), arr2(10) As Integern = 3For i = 1 To 5arr1(i) = iarr2(n) = 2 * n + iNext iPrint arr2(n); arr1(n)End Sub运行程序后,在窗体上输出的内容为(A)A)11 3 B)3 11 C)13 3 D)3 139.如有以下程序代码:Private Sub Command1_Click()Dim arr(3, 3) As IntegerFor i = 1 To 3For j = 1 To 3If j = i Or j = 3 - i + 1 Thenarr(i, j) = 1Elsearr(i, j) = 0End IfNext jNext iPrint arr(1, 1) + arr(2, 2) + arr(3, 3)End Sub运行程序后,在窗体上输出的内容为(D)A)0 B)1 C)2 D)310.如有以下程序代码:Option Base 1Dim a() As IntegerPrivate Sub Form_Click()Dim i As Integer, j As IntegerReDim a(3, 2)For i = 1 To 3For j = 1 To 2a(i, j) = i * jNext jNext iReDim Preserve a(3, 4)For i = 3 To 4a(3, i) = i + 5Next iPrint a(3, 2); a(3, 4)End Sub运行程序后,在窗体上输出的内容为(B)A)0 0 B)6 9 C)7 12 D)8 1311.在窗体上话3个单选按扭,组成1个名为chkOption的控件数组。
vb循环结构练习题

1.打印有规律图形Private Sub Form_Click()For i = 1 To 9Print Tab(20 - i); String(2 * i - 1, Trim(Str(i))) Next iPrint Tab(10); String(19, Right(Str(i), 1)) End Sub2.近似计算pi的值;Private Sub Command1_Click()n = Text1pi = 2For i = 1 To na = (2 * i) * (2 * i) / ((2 * i - 1) * (2 * i + 1)) pi = pi * aNext iText2 = piEnd Sub3.显示图形Private Sub Picture1_Click()Dim se As StringFor i = 1 To 6s = 0For j = 1 To is = 10 * s + jIf i Mod 2 = 0 Thense = "-" & sPicture1.Print Tab(j * 9 + 1); se; Else: se = sPicture1.Print Tab((j) * 9 + 2); se; End IfNext jPicture1.PrintNext iEnd Sub4.显示水仙花数,三位数的Private Sub Form_Click()For s = 100 To 999a = s \ 100b = (s - 100 * a) \ 10c = s - 100 * a - 10 * bIf s = a * a * a + b * b * b + c * c * c Then Print sEnd IfNext sEnd Sub5.求sn=a+aa+aaa……+aaaa(n个a)a是1到9的随机数,n是5到10的随机数Private Sub Command1_Click()m = Int(Rnd * 9 + 1)n = Int(Rnd * 6 + 5)temp = 0s = 0For i = 1 To ntemp = temp * 10 + ms = s + tempNext iPrint sPrint mPrint nEnd Sub6.规范文字句子开头大写,其他都小写,句子结束符号位“.”“!”“?”Option ExplicitPrivate Sub Command1_Click()Dim T As String, i, S As String, zf As StringDim OutPut As StringT = "."zf = Trim(Text1.Text)For i = 1 To Len(zf)S = Mid(zf, i, 1)OutPut = OutPut & IIf(InStr("?.!?。
VB程序设计 习题及答案第5章 循环结构程序设计

第5章循环结构程序设计5.1 试编程序,打印出自然数1到20的立方数。
【参考答案】程序代码设计Private Sub Form_Click()Form1.Print " x", " x^2"For x = 1 To 20Form1.Print x, x ^ 2Next xEnd SubPrivate Sub Form_Load()Form1.AutoRedraw = TrueForm1.Print "打印自然数1到20的立方数"Form1.Print "单击窗体开始"图5-1 程序运行结果End Sub程序运行结果如图5-1所示:5.2 试编程序,打印出1到500之间所有偶数的和。
【参考答案】程序代码设计Private Sub Command1_Click()Sum = 0For k = 1 To 500If k Mod 2 = 0 Then Sum = Sum + kNext kForm1.Print "1到500的偶数和为:"; SumEnd SubPrivate Sub Form_Load()Form1.AutoRedraw = TrueForm1.PrintForm1.Print "打印1到500之间所有偶数的和"图5-2 程序运行结果Form1.PrintEnd Sub程序运行结果如图5-2所示:5.3 试编写打印下面图案的源程序。
* * * * ** * * ** * ** **【参考答案】程序代码设计Private Sub Command1_Click()For i = 1 To 5Form1.Print Tab(5 + i);For j = i To 5Form1.Print "*";Next jForm1.PrintNext iEnd Sub程序运行结果如图5-3所示:图5-3 程序运行结果5.4 试编写打印下面图案的源程序。
vb程序设计do循环练习

Do循环练习1.while/wend循环当_________________执行循环体,当____________退出循环。
2.写下列程序运行结果。
(1) s=0I=1While i<=5S=s+iPrint s;I=i+1Wend(2) i=10While 7-iPrint I;I=i-1Wend(3) s=0:n=1While n<sS=s+nN=n+2If n=5 then n=n-1WendPrint s;n3.程序填空(1)计算:s=20!S=1K=1While _________S=_________K=k+1WendPrint “20!=”;s(2)任意输出20个数,求最大值N=1Input xMax=xWhile n<=20If max<x then ________N=n+1_________WendPrint max(3)s=.......7353333753,N为何值时S 大于104S=0:n=0While s<1E4________S=s+___________WendPrint x1.下列循环语句能正常结束的是________。
A) i = 5 B) i = 1Do Doi = i + 1 i = i + 2Loop Until i < 0 Loop Until i = 10 C) i = 10 D) i = 6Do Doi = i - 1 i = i - 2Loop Until i < 0 Loop Until i = 1 2.在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:Private Sub Command1_Click()Dim a As Integer,s As Integera=8s=1Dos=s+aa=a-1Loop While a<=0Print s;aEnd Sub程序运行后,单击命令按钮,则窗体上显示的内容是______。
VB基本知识及选择、循环结构习题

V B基本知识及选择、循环结构习题(总11页)-CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除一、VB 基本知识及选择、循环结构习题一、基本概念题(1) 说明下列哪些是Visual Basic 合法的直接常量,并分别指出它们的类型。
%100 1E1 123D3 123,456 0100“ASDF” “” #2004/10/7# 100# π&O78 &H123 True T -1123! #(2)下列数据哪些是变量,哪些是常量是什么类型的常量Name “name” False ff “11/16/99” cj“120” n #11/12/2004#(3) 下列符号中,哪些可以是Visual Basic 的合法变量名A123 a12_3 123_a a,123 a 123 IntegerXYZ False Sin(x) 变量名 sinx π(4)把下列数学表达式写成Visual Basic 表达式:(1)5||z y x ++ (2)6)1(xy +(3)xy y x 310+ (4)a acb b 242-+-(5)3211111r r r ++ (6)110ln 45sin 10++++y x e (5)写出下列表达式的值:(1)123 + 23 Mod 10 \ 7 + Asc("A")(2)Int * 100 + / 100(3)#11/22/2004# - 10(4)"ZXY" & 123 & "abc"(6)设a=7,b=3,c=4,求下列表达式的值:(1)a + 3 * c (2)a ^ 2 / 4(3)a / 2 + 3 \ 2 (4)a Mod 3 + b ^ 3 / c \ 5(7)写出下列函数的值:(1)Int (2)Fix(3)Sqr(Sqr(81)) (4)Len("Visual Basic 程序设计")(5)Int(Abs(99 - 100) / 2) (6)Sgn(7 * 3 + 2)(7)LCase("Hellow VB!") (8)Mid("Hellow VB!", 4, 3)(9)Left("Hellow VB!", 3) (10)Val("16个加23个")(11)Str (12)UCase("Visual Basic")二、 选择题(1)可以同时删除字符串前导和尾部空格的函数是 。
循环结构练习题

第13题图 循环结构练习题1、Visual Basic 程序段如下:该程序段运行后,变量s 的值是( ) s=0 For k=1 To 5 s=s+5 Next k (A ) 0 (B ) 5 (C ) 10 (D ) 252、应用计算机程序解决数学问题“求一元二次方程实数解”的步骤,通常是( )。
A. 设计算法→编写程序B. 编写程序→调试程序→检测结果C. 分析问题→设计算法→编写程序→调试运行→检测结果D. 编写程序→调试运行3、“=”在Visual Basic 程序中既可以表示赋值操作,也可以表示关系运算。
右图程序段中“=”作用和⑤相同的是 A .① B .② C .③ D .④4、用计算机解决问题时,首先应该确定程序“做什么?”,然后再确定程序“如何做?”请问“如何做?”是属于用计算机解决问题的哪一个步骤?( )A .分析问题B .设计算法C .编写程序D 、调试程序5、流程图中表示判断的是( )。
A.矩形框 B.菱形框 C.圆形框 D.椭圆形框6、任何复杂的算法都可以用三种基本结构组成,下列不属于基本结构的是( )A .顺序结构B .选择结构C .层次结构D .循环结构 7、执行完循环语句For x=1 to 100 step 2 ……Next x 后,x 的值是( )A .101B .100C .99D .98 8、下列给出的赋值语句中正确的是( )。
A .4 = MB .-M =MC .B=A -3D .x + y = 0 9、以下程序中的循环体执行的次数是( )。
For A=1 To 100 Step 2 S=S+A Next A Print SA.48 B.49 C.50 D.5110、下列程序代码中,循环体执行的次数是( )。
y = 1Do While y <= 6y = y+yLoopA、2B、3C、4D、511、有如下VB程序,其结构为( )。
Dim i As Integer, sum As Doublesum=0For i = 1 To 100sum =sum+1/iNext iPrint "sum= " & sumA、顺序结构B、分支结构C、循环结构D、选择结构12、阅读如下VB程序段,运行程序后,当n的值为5时,a的值为______。
vb循环结构选择题共24页

一、选择题1、无条件转移GoTo语句后面是(A)A、标号或行号B、输出语句C、输入语句D、子过程2、无条件转移GoTo语句后面的行号或标号以字母开头,后跟(A)A、冒号B、分号C、逗号D、空格3、无条件转移GoTo语句后面的行号或标号在同一过程中(A)A、必须唯一B、可以重复C、以数字开头D、以汉字开头4、while循环结构中的条件表达式取值为(A)A、TrueB、FalseC、True或FalseD、05、while循环结构中的条件表达式取值为(A)时执行语句组A、TrueB、FalseC、True或FalseD、06、while循环结构中与(A)匹配使用,不能单独出现A、WendB、endC、loopD、next7、Do…、、loop循环结构中的循环体执行的最少次数为(A)A、0B、1C、2D、38、前测型Do…、、loop循环结构中的循环体执行的最少次数为(A)A、0B、1C、2D、39、后测型Do…、、loop循环结构中的循环体执行的最少次数为(B)A、0B、1C、2D、310、Do…loop循环结构中的Exit Do语句的功能是(B)A、退出整个程序B、退出当层循环C、退出最外层循环D、退出所在子程序11、Do…loop中使用while关键字时,条件为(B)执行循环体A、FalseB、TrueC、0D、假或真12、Do…loop中使用until关键字时,条件为(A)执行循环体A、FalseB、TrueC、0D、假或真13、Do…loop中使用while关键字时,条件为(A)终止循环A、FalseB、TrueC、0D、假或真14、Do…loop中使用until关键字时,条件为(B)终止循环A、FalseB、TrueC、0D、假或真15、For…Next循环结构中(C)用来控制循环变量A、forB、stepC、nextD、to16、For…Next循环结构中step用来控制(D)A、循环变量B、循环变量初值C、循环变量终值D、循环变量增量17、For…Next循环结构中循环变量初值大于终值时,步长为(A)A、负数B、非负数C、正整数D、正数18、For…Next循环结构中循环变量初值小于终值时,步长为(A)A、负数C、正整数D、正数19、For…Next循环结构中next后的循环变量(A)A、可以省略B、不可以省略C、与for后的变量名可以不同D、与for后的变量不是同一变量20、For…Next中循环变量初值与终值间使用的关键字是(A)A、ToB、InC、gotoD、private21、For…Next中循环变量初值与终值间使用的关键字是(A)A、ToB、InC、gotoD、private22、执行下面的程序段后,s的值为(C)Private Sub Form_Click()Static s As Integers = 5For i = 1.4 To 2.1 Step 0.6s = s + 1Next iPrint sEnd SubA、5B、6C、7D、123、下面程序的作用是利用随机函数产生10个100~200之间(包含100、200)的随机数,打印其中为5的倍数的数将程序补充完整(A)Private Sub Command1_Click()For m = 1 To 10x = Int(Rnd * 101+100)If()ThenPrint x;End IfNext mEnd SubA、x mod 5=0B、x mod 5==0C、x/5=024、设有如下程序:Option Base 1Private Sub Form_Click()Dim a(10), P(3) As Integerk = 5For i = 1 To 10a(i) = iNext iFor i = 1 To 3P(i) = a(i * i)Next iFor i = 1 To 3k = k + P(i) * 2Next iPrint kEnd Sub程序运行后,单击窗体,则在窗体上显示的是(A)A、33B、35C、37D、3825、在窗体上画一个命令按纽Command1,然后编写如下事件过程:Private Sub Command1__Click()X=0N=val(inputbox(“n=?”))For i=1 to nFor j=1 to iX=x+1Next jNext iPrint xEnd sub程序运行后、单击命令按钮,输入3,在窗体上显示的内容是(D)A、9B、44C、5D、626、以下能够正确计算n!的程序是(C)A、private sub command1__click()N=5 : x=1DoX=x*1I=i+1Loop while i<nPrint xEnd subB、private sub command1__click()N=5 : x=1 : i=1DoX=x*iI=i+1Loop while i<nPrint xEnd subC、private sub command1__click()N=5 : x=1 : i=1DoX=x*iI=i+1Loop while i<=nPrint xEnd subD、private sub command1__click()N=5 : x=1 : i=1DoX=x*iI=i+1Loop while i > nPrint xEnd sub27、在窗体上画一个命令按纽Command1,标签Label1然后编写如下事件过程:Private sub command1_click()For i=1 to 15X=2*i-1If x mod 3=0 then s=s+1Next iLabel1、caption =sEnd sub程序运行后,单击命令按钮,标签中显示的内容是( B )A、1B、5C、27D、4528、在窗体上画一个命令按纽Command1,然后编写如下事件过程:Private sub command1_click()For i=1 to 4For j =0 to iPrint chr$(65+i)Next iPrintEnd sub程序运行后,单击命令按钮,窗体中显示的内容是( A)A、BBCCCDDDDEEEEEB、ABBCCCDDDDC、BCCDDDEEEED、AABBBCCCCDDDDD28、在窗体上画两个名称分别为text1,text2的文本框和一个名称为command1的命令按钮,然后编写如下事件过程:Private sub command1_click()Dim x as integer,n as integerX=1 :n=0Do while x < 20X=x*3N=n+1LoopText1、text=str(x)Text2、text=str(n)End sub程序运行后,单击命令按钮,在两个文本框中显示的值分别是(B)A、15和1B、27和3C、195和3D、600和429、在窗体中添加一个命令按钮,名称为Command1,然后编写如下程序:Private Sub Command1_Click()Dim a(5),b(5)For j =1 to 4A(j)=3*jB(j)=a(j)*3Next jText1、text=b(j\2)End Sub程序运行后,单击命令按钮,在文本框中显示( B )A、25B、18C、36D、3530、下面程序运行时,内层循环的循环总次数是(A)For m = 1 To 3For n = 0 To m - 1Next nNext mA、6B、3C、0D、931、定义语句Dim A (-3 to 3) as Integer,定义数组的元素个数是(D)A、6B、3C、0D、732、执行下面的程序段后,X的值为(C)X=5For I=1 to 10 Step 2X=X+I\5Next IA、7B、10C、8D、533、如果整型变量a、b的值分别为3和1,则下列语句中循环体的执行次数是(D )For I=a to bPrint INext IA、0B、1C、2D、334、下列关于do while …loop 和do…loop until循环执行循环体次数的描述正确的是(D )A、do while …loop循环和do…loop until循环至少都执行一次B、do while …loop循环和do…loop until循环可能都不执行C、do while …loop循环至少执行一次,do…loop until循环可能不执行D、do while …loop循环可能不执行,do…loop until循环至少执行一次35、在窗体中添加一个名称为Command1的命令按钮,然后编写如下程序:Private Sub Command1_Click()For i = 1 To 4a = 1For j = 1 To 3a = 2For k = 1 To 2a = a + 6Next kNext jNext iPrint aEnd Sub程序运行后,单击命令按钮,则在窗体上显示的内容是(A )A、14B、15C、16D、1736、设有如下程序:Private Sub Form_Click()a = 1For i = 1 To 3Select Case iCase 1, 3a = a + 1Case 2, 4a = a + 2End SelectNext iPrint aEnd Sub程序运行后,单击窗体,则在窗体上显示的内容是( B )A、6B、5C、4D、337、在窗体中添加一个名称为Command1的命令按钮,然后编写如下程序:sub ss (b() as Integer )For i = 1 To 4b(i) = 2 * iNext iEnd SubPrivate Sub Command1_Click()Dim a(1 To 4) As Integera(1) = 5: a(2) = 6a(3) = 7: a(4) = 8ss a()For i = 1 To 4Print a(i)Next i运行上面的程序,单击命令按钮,则在窗体上显示的内容是(B )A、5 6 7 8B、2 4 6 8C、1 2 3 4D、5 7 6 838、在窗体中添加一个名称为Command1的命令按钮,然后编写如下程序:Function fun(x As Integer)Static zy = y + 1: z = z + 1fun = x + y + zEnd FunctionPrivate Sub Command1_Click()Dim x As Integerx = 1For i = 1 To 2Print fun(x)Next iEnd Sub程序运行后,如果单击命令按钮,窗体中显示的内容是(B )A、3 3B、3 4C、3 5D、3 639、若I、n均为整型变量,下列程序段的输出结果为(C)Private Sub Form_Click()n = 0For i = 1 To 10If i Mod 2 = 1 Then n = n + 1Next iPrint nEnd SubA、0B、4C、5D、340、在窗体中添加一个文本框(其中Name属性为Text1),然后编写如下代码:Private Sub Form_click ()Text1、Text = ""Text1、SetFocusFor i = 1 To 10Sum = Sum + iNext iText1、Text = Sum上述程序运行后,单击窗体,则运行的结果(A )A、在文本框Text1中输出55B、在文本框Text1中输出0C、出错D、在文本框Text1中输出不定值41、在窗体中添加一个名称为Command1的命令按钮,然后编写如下代码:Private Sub Command1_Click()x = 0Do Until x = -1a = InputBox("请输入A的值")a = Val(a)b = InputBox("请输入B的值")b = Val(b)x = InputBox("请输入X的值")x = Val(x)a = a +b + xLoopPrint aEnd Sub程序运行后,单击命令按钮,依次在输入对话框中输入1<CR>2<CR>3<CR>4<CR>5<CR>-1<CR>,则输出结果为(A)A、8B、9C、14D、1542、设有如下程序:Option Base 1Private Sub Form_Click()Dim a(10), P(3) As Integerk = 5For i = 1 To 10a(i) = iNext iFor i = 1 To 3P(i) = a(i * i)Next iFor i = 1 To 3k = k + P(i) * 2Next iPrint kEnd Sub程序运行后,单击窗体,则在窗体上显示的是(A )A、33B、35C、37D、3843、在窗体中添加一个名称为Command1的命令按钮,然后编写如下代码:Function F(a As Integer)b = 0Static cb = b + 1c = c + 1F = a + b + cEnd FunctionPrivate Sub Command1_Click()Dim a As IntegerDim b As Integera = 2For i = 1 To 3b = F(a)Print bNext iEnd Sub程序运行后,如果单击命令按钮,则窗体上显示的内容是(A )A、4 5 6B、1 2 3C、0 1 2 3D、2 3 444、在窗体上画一个命令按钮,名称为Command1。
VB循环结构测试题及答案

V B循环结构测试题及答案内部编号:(YUUT-TBBY-MMUT-URRUY-UOOY-DBUYI-0128)循环结构测试题(四)一:选择题1:以下()是正确的for….next结构。
(A)for x=1 to step 10 (B) for x=3 to –3 step -3….. …..next x next x(C ) for x=1 to 10 (D) for x=3 to step 3re: …. ……Next x next yIf I=10 then goto re2:下列循环语句能正常结束循环的是()(A)I=5 (B) I=1do doI=I+1 I=I+2Loop until I<0 loop until I=10(C) I=10 (D) I=6do doI=I-1 I=I-2Loop until I<0 loop until I=13:下面程序段的运行结果为()for I=3 to 1 step –1print spc(5-I);for j=1 to 2*I-1 print “*”; next j print next I4下列程序在文本框输入“ABCD ”四个字符时,窗体上显示的是( ) private sub text1_change( ) print ; end sub(A) ABCD (B) ( C ) AABABCABCD5哪个程序段不能分别正确显示1!,2!,3!,4!的( ) 二:填空题1:要使下列For 语句循环执行20次,循环变量的初值应当是: for k=( ① ) to –5 step –2 2:下面程序段显示( ② )个“*”。
For I=1 to 5For j=2 to IPrint “*”; Next j Next I* * * * (B) * * * * * * * * (C) * * * * * * * *(D) * * * * ** * *A BCD(D) AAB ABCABCD(A )for I=1 to 4n=1 for j=1 to (B ) for I=1 to 4for j=1 toI(C) N=1for j=1 to 4 (D)N=1 J=1 Do whilej<=430for j=1 to 12 step 340for k=6 to 2 step –241print j,k42next k43next j4: 以下程序运行后,si,sj,I,j,k的结果分别是(⑤),(⑥),(⑦),(⑧),(⑨),(⑽)private sub command1_click( )for I=1 to 2for j=1 to Isk=0for k=j to 3sk=sk+1next ksj=sj+1next jsi=si+1next Iprint si,sj,sk,I,j,kend sub5:下面程序运行后输出的结果是(⑾)private sub command1_click()print tab(5*I+1);”2”+I;”2”&I;next Iend sub6:下面程序运行后输出的结果是(⑿) private sub command1_click()a$=”*”;b$=”$”for I=2 to 4if I mod 2=0 thenx$=string(len(a$)+I,b$)elsex$=string(len(a$)+I,a$)end ifprint x$;next Iend sub7: 执行下面程序,打印结果是(⒀)option explicitprivate sub form_click( )dim I as integer,j as integerj=10for I=1 to j step 2I=I+1Next IPrint I,jEnd sub8:输入任意长度的字符串,要求将字符顺序倒置,例如:将输入“ABCDEFG”变换成“GFEDCBA”private sub command1_click()dim a$,I%,c$a=inputbox(“输入字符串”)n=( ⒁ )for I =1 to ( ⒂)c=mid(a,I,1)mid(a,I,1)=( ⒃ )( ⒄ )=cnext Iprint aend sub9:找出被3,5,7除,余数为1的最小的5个正整数。
第七章 VisualBasic控制结构-循环结构习题

教 学
Picture1.Print Tab((j - 1) * 9 + 1); se;
课
Next j
件
Picture1.Print
Next i
程序设计举例
题目2:
(1)判断一个输入的数是否为素数。
教 学
(2)找出100到200之间的所有素数。
课 件
题目3: 求S=1!+2!+3!+……+7!
循环控制变量赋初值 及其他X相=1关:S初um始=化0 语句
<循环体>
循环变量获得初值
[ Exit For ]
<循环体> Next [循环变量]
变量在终值内?
T
循环体
For循环的执行过程
Exit For 循环体 循环变量增加步长
教 学 F课 件
说明
① 格式中的参数说明:
☆ 循环变量必须为数值型。
教 学
☆ 循环的初值、终值和步长都是数值表达式,其值不一定是 课
• Exit Do语句只能用在Do循环语句中
教 学
• Exit For 语句只能用在For循环语句中
课 件
• 使用方法:在循环体中,作为IF语句的子句
循环结构程序的要素:
1. 循环体是什么?
教 学
2.
循环控制变量及循环控制表达式是什么?
课 件
3. 循环应如何初始化?
4. 对于每次循环,其控制变量如何改变?
Sum=sum+i i=i+1
i是从1到n递增1的 数列
一、循环程序设计结构
VB中提供了两种类型的循环语句:一种是计数循环语 句;另一种是条件循环语句。Visual Basic 支持的循环结
4.VB实验四(无答案) 循环结构(1)

循环结构
Do循环基本结构如下: Do循环基本结构如下: 循环基本结构如下 Do Dim i%, sum% 循环体 sum = 0 i=1 Loop
Do 最简单的Do循环 循环, 最简单的Do循环, sum = sum + i 没有循环控制条 i=i+1 件,所以在循环 If i > 100 Then Exit Do 体中要使用Exit 体中要使用Exit Loop Do跳出循环 Do跳出循环 Print "1+2+...+100="; sum
循环结构
Do While循环结构语法格式如下: While循环结构语法格式如下 循环结构语法格式如下: Do While 条件 Dim i%, sum% 循环体 sum = 0 Loop i=1 先判断条件, 先判断条件, 条件成立时, 条件成立时, 反复执行循环 体
Do While i <= 100 sum = sum + i i=i+1 Loop Print "1+2+...+100="; sum
计算: 其中X,N由文本框输入,计算结果显示在 文本框中.
X X X X S = 1+ + + + ... + 2! 4! 6! (2 N )!
2
3
N
代码
题目8 题目8
计算: 1+1×3+1×3×5+……+1×3×……(2N+1) 其中N由InputBox函数或文本框输入,计算结 果显示在窗体上.
题目4 题目4
编程计算n!. 的值用inputbox函数输入 编程计算n!.n的值用inputbox函数输入. 函数输入. 结果在窗体上显示. 结果在窗体上显示.
(完整版)VB循环结构测试题及答案

循环结构测试题(四)一:选择题1以下()是正确的for….nex结构。
A) for x=1 to step 10 (B) for x=3 to -3 step -3next x(C ) for x=1 to 10 re: … .Next xIf I=10 then goto re2:下列循环语句能正常结束循环的是( ( A) I=5doI=I+1Loop until I<0(C) I=10doI=I-1Loop until I<03:下面程序段的运行结果为( ) for I=3 to 1 step -1print spc(5-I);next x(D) for x=3 to step 3next y)(B) I=1 doI=I+2loop until I=10(D) I=6doI=I-2loop until I=1for j=1 to 2*1-1 print next j print n ext Iprivate sub text1_cha nge() print textl.text; end sub (A) ABCD(B) A(C )AABABCABCDBC D5哪个程序段不能分别正确显示1!,2!,3!,4!的()(A)(B)(C) * * * * *(D) * * * * *4下列程序在文本框输入“ ABCD ” 四个字符时,窗体上显示的是(D) AAB ABC ABCD(A )for 1=1 to 4 n=1 for j=1 to I n=n*j n ext j print n n ext i(C) N=1 for j=1 to 4 n=n*j print n n ext j(D) N=1J=1Do while j<=4 n=n*j print n j=j+1 loop1:要使下列For 语句循环执行20次,循环变量的初值应当是:for k=( ① )to 45 step —2:下面程序段显示(②)个“ * ”。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VB循环结构练习题一、分析程序的运行结果(每题2分,共60分)1>以下循环的执行次数是______ OK=0Do While k<=10k=k+1Loop2、 _____________________________________ 下列程序段的执行后输出的结果为____________________ ol=4:A=5Do1=1+1 :A=A+2Loop Until l>=7Print "A=";A3、__________________________ 下列程序的执行结果是oT = O : m = 1 : Sum = 0Dot = t + m : Sum = Sum + t: m = m + 2Loop While m <= 9Print Sum4、_________________________________ 下列程序段的执行时,共循环_________________________ 次。
For a=0 To 1For b=1 To 2For c=1 To 31=1+1 Next cNext bnext a5、下列程序段的运行结果是:Sub sele()Dim n as Integer1=21 :n=3Do While l>nl=l-nLoopPrint IEnd Sub打印结果_____ o6、___________________________________ 执行下面的程序段后,s的值为_________________ oS=5For l=2.6 To 4.9 Step 2s=s+1Next I7、下列程序段的执行后输出的结果为__________K= 1For I = 1 To 3A=I A I A KNext IPrint A8、___________________________ 下列程序的执行结果是_______________________ o M1 = 1:m2 = 1Do While m2<>6ml = m1*m2 : m2 = m2+1LoopPrint ml9、下列程序的执行结果是_____ oPrivate Function P(N As Integer)For I = I To NSUM = SUM + 1Next IP = SUMEnd FunctionPrivate Sub Command 1_Click()S = P(1) + P(2) + P(3) + P(4)Print S;End Sub10、以下程序用来输出1到100所有奇数的和,请补充完该程序。
Private Sub Command3_Click()Dim s As LongDim x As Integers = 0Forx=1 to 100 step ____s = s + xNext xPrint sEnd Sub11>下列程序的执行结果是_________ oA = 75If a>60 ThenI = 1Elself a>70 Thenl = 2Elself a>80 Thenl = 3Elself a>90 ThenI = 4End IfPrint I12、下列程序段的运行后的值为______ Dim t,k as singlek=5 : t=1do While k>=-1t=t*k : K=K-1loop13、下面程序段的输出结果.P=0:s=0DoP = P+2s = s+pLoop While p<11Print "s="&s14、下面程序段的输出结果.For X=1.5 To 5 Step 5Print X;NextX15、执行下面的程序段后,s的值为oS=5For l=2.6 To 4.9 Step 0.6s=s+1Next I16、在窗体上画一个命令按钮,然后编写如下事件过程:Private Sub Command 1_Click() a=lnputBox("请输入一个整数")b=lnputBox("请输入一个整数") Print a+bEnd Sub321 和456,17、程序运行后,单击命令按钮,在输入对话框中分别输入输出结果为_____ 。
执行下面的程序段后,b的值为 _______ oA=300:b=20 a=a+b:b=a-b:a=a-b1 &下列程序段执行后x的值是__________ oX=100 : y=50if x>y then x=x-y else x=x+y19、________________________________________ 有如下程序,该程序的运行结果是______________________________________ oA=20 : b=10print a>b20、_________________________________________________ 有如下程序,该程序的运行后输出的结果是__________________Private sub Command1_Click()I="AAAAAA"Mid(l,4,3)="BBB"Print IEnd Sub21、下面程序段执行后的结果是_______ oX=10For l=6.3 to 4.9 Step -0.3x=x-1NextPrint x22>在窗体上画一个命令按钮(其Name属性为CommAndl)然后编写如下代码:Private Sub CommAndl_Click()Dim M(10) As IntegerFor k=1 To 10M(k)=12-kNext kx=6Print M(2+M(x))End Sub程序运行后,单击命令按钮,输出结果是 _________ °23. 在窗体上画一个命令按钮,然后编写如下事件过程。
程序运行后,单击命令按钮,依次在输入对话框中输入5, 4, 3, 2, 1, -1 ,输出结果为Private Sub Command 1-Click()x=0Do Until x=-2a=Val(lnputBox("请输入A 的值"))b=Val(lnputBox("请输入B 的值"))x=Val(lnputBox("请输入x 的值")) a=a+b+x LoopPrint aEndSub24、以下程序段中Do- Loop循环执行的次数为_____________n=5DoIf n Mod 2=0 Thenn=n \2Elsen=n*3+1End IfLoop until n=1A.4B.3C.5D.225. 下列程序段执行后,x的值为___________x=0For i=1 To 10F CK戸To 10x=x+1Next jNext iA.50B.55C.100D.10526. 下面的程序运行结果是__________ oPrivate Sub Form_Click()i=0Doi=i+1if i>10 then Exit DoLoop Until i<10Print iEnd Sub27. 下面的程序运行后输出的结果是For i=1 to 2S=iFor j=0 to i-1S=S+S*iNext jPrint sNext i28. 以下程序输出的结果为 __________x=1y=4Do Until y>4X=X*Yy=y+1LoopPrint X29. 下列程序运行后,输出结果为___________°b = 1Do While b < 40b = b*(b+ 1)LoopPrint b30. 当变量x=2, y=5时,以下程序的输出结果为____________Do Until y>5x=x*yy=y+1LoopPrint x二、程序填空(每题4分,共40分)1)下列程序的作用是将三个数按从大到小进行排序,请补充完该程序。
If a<b Thend=a:a=b:b=dEndlfIf a<c Thend=a:a=c:c=dEndlfIf The nd=b:b=c:c=dEndlfPrint a,b,c2) 给定年份,下列程序用来判断该年是否闰年,请补充完该程序。
提示:闰年的条件是年号可以被4整除但不能被100整除,或者能被400整除。
Private Sub Command6_Click()Dim y As Integery=lnputBox(" 请输入年号")lf(y Mod 4=0 ________________________________ y Mod 100<>0) or (y Mod 400=0) ThenPrint" 是闰年”Else Print" 是普通年份"End IfEnd Sub3) 以下的程序用来输出100到2000间不能被3整除的数字,请补充完该程序。
Private Sub Commmand1_Click()Dim x As Integerx = 100Do Until x > ____If x Mod 3 <> 0 ThenPrint xEnd Ifx = x + 1LoopEnd Sub4) 下列循环语句,要求和数达到10既停止累加,退出循环,请补充完程序。
Forj=1 to 10s=s+jIf s>=10 then _____ 。
Next j5) 下列程序用来计算1+2+3……+10的值,请补充完程序。
Dim t,k as singleK=0DO While k<10K=k+1: _____loopprint t6. 找出被3、5、7除,余数为1的最小的5个正整数。
Private sub commancH_click()Dim countN%, n%CountN = 0Don = n + 1If ________ t he nPrint nCountN = countN + 1End IfLoop while countN<5End sub7. 有一个长阶梯,如果每步跨2阶最后剩1阶,如果每步跨3阶最后剩2 阶,如果每步跨4阶最后剩3阶,如果每步跨5阶最后剩4阶,如果每步跨6阶最后剩5阶,只有当如果每步跨7阶时恰好走完,显示这个阶梯至少要有多少阶。
sub commancH_click()dim n%, m%for n = 7 to 10000 step 7if n mod 2 = 1 and _______ thenprint nexit forend ifn ext nend sub8. 期末某班在一周6天内考三门分别为x, y, z的考试课程,规定一天只能考一门,课程依次按先考x,后考y,最后考z,最后一门课程最早周五考。