vb考试复习5章6章习题.docx
- 文档编号:4776483
- 上传时间:2022-12-08
- 格式:DOCX
- 页数:26
- 大小:21.24KB
vb考试复习5章6章习题.docx
《vb考试复习5章6章习题.docx》由会员分享,可在线阅读,更多相关《vb考试复习5章6章习题.docx(26页珍藏版)》请在冰豆网上搜索。
vb考试复习5章6章习题
第5章选择结构程序设计
-、选择题
1.下列语句正确的是【】。
(多选)
(A)IfX≠YThenPrint"X不等于Y"(B)IfX<>YThenPrint"X不等于Y"
(C)IfX> 2.下列语句正确的是【】。 (A)IfA≥BThenT=AA=BB=T(B)IfA≥BThenT=A;A=B;B=T (C)IfA>=BThenT=AA=BB=T(D)IfA>=BThenT=A: A=B: B=T 3.下列语句正确的是【】。 (A)IfX<3*YAndX>YThenY=X^3(B)IfX<3*YAndX>YThenY=X3 (C)IfX<3*Y: X>YThenY=X^3(D)IfX<3*YAndX>YThenY=X**3 4.关于语句Ifx=lTheny=1,下列说法正确的是【】。 (A)x=1和y=1均为赋值语句(B)x=1和y=1均为关系表达式 (C)x=1为关系表达式,y=1为赋值语句(D)x=1为赋值语句,y=1为关系表达式 5.执行以下语句后显示结果为【】。 DimxAsInteger IfxThenPrintxElsePrintx-1 (A)1(B)O(C)一1(D)不确定 6.如果X的值小于或等于Y的平方,则打印"OK",表示这个条件的单行格式If语句是【】。 (A)Ifx<=y2ThenPrint"OK"(B)Ifx<=y^2Print"OK" (C)Ifx<=y^2Then"OK"(D)Ifx<=y^2ThenPrint"OK" 7.如果A为整数且|A|=100,则打印"OK",否则打印"Error",表示这个条件的单行格式If语句是 【】。 (A)IfInt(A)=AAndSqr(A)>=1OThenPrint"OK"ElsePrint"Error" (B)IfFix(A)=AAndAbs(A)>=100ThenPrint"OK"ElsePrint"Error" (C)IfInt(A)=AAnd(A>=100,A<=-100)ThenPrint"OK"ElsePrint"Error" (D)IfFix(A)=AAndA>=100AndA<=-100ThenPrint"OK"ElsePrint"Error" 8.下列程序段【】能够正确实现条件: 如果X (A)IfX PrintA A=-15A=-15 PrintAPrintA (C)IfX A=15: PrintAElseA=-15 ElsePrintA A=-15: PrintAEndIf EndIf 9.能够实现以下分段函数的程序段是【】。 (多选) f(x)=1+XX≥O 1-XX (A)IfX>=OThenY=1+X(B)IfX≥OThenY=1+X Y=1-XElseY=1-X EndIf (C)IfX>=OThenY=1+X(D)IfX IfX Else: Y=1+X EndIf 10.下列【】程序段不能实现以下分段函数。 (多选) f(x)=sqr(x+1)x≥1 x2+3x<1 (A)x=Val(Text1.Text)(B)x=Val(Text1.Text) f=x*x+3Ifx>=1Thenf=Sqr(x+1) Ifx>=1Thenf=Sqr(x+1)Ifx<1Thenf=x*x+3 PrintfPrintf (C)x=Val(Text1.Text)(D)x=Val(Text1.Text) Ifx<1ThenIfx>=1Thenf=Sqr(X+1) f(x)=x*x*+3f=x*x*+3 ElsePrintf F(x)=Sqr(X+1) EndIf Printf 11.计算分段函数: 0x<0 10≤x<1 f(x)=21≤x<2 3x≥2 下面程序段中正确的是【】。 (A)Ifx<0Theny=0(B)Ifx>=2Theny=3 Ifx<1Theny=1Ifx>=1Theny=2 Ifx<2Theny=2Ifx>=0Theny=1 Ifx>=2Theny=3Ifx<0Theny=0 (C)Ifx<0Then(D)Ifx>=2Then y=0y=3 ElseIfx>=0ThenElseIfx>=1Then y=1y=2 ElseIfx>=1ThenElseIfx>=0Then y=2y=1 ElseElse y=2y=0 EndIfEndIf 12.计算分段函数: 0x<0 10≤x<1 f(x)=21≤x<2 3x≥2 下面程序段中正确的是【】。 (A)SelectCasex(B)SelectCasex Casex y=0y=0 Casex>=OAndx<1Casex<1 y=1y=1 Casex>=1Andx<2Casex<2 y=2y=2 CaseElseCaseElse y=3y=3 EndSelectEndSelect (C)SelectCasex(D)SelectCasex CaseIs y=0y=0 CaseIs<1CaseIs>=0,Is<1 y=1y=1 CaseIs<2CaseIs>=1,Is<2 y=2y=2 CaseElseCaseIs>=2 y=3y=3 EndSelectEndSelect 二、判断程序或程序段的执行结果 13.下列程序段的执行结果为【】。 X=2 Y=1 IfX*Y<1ThenY=Y-1ElseY=-1 PrintY-X>O (A)True(B)False(C)-1(D)1 14.下列程序段的执行结果为【】。 J1=10 J2=30 IfJ1 PrintJ1 (A)10(B)30(C)1030(D)3010 15.下列程序段的执行结果为【】。 X=5 Y=-20 IfNotX>OThenX=Y-3ElseY=X+3 PrintX-Y;Y-X (A)-33(B)5-8(C)3–3(D)25-25 16.下列程序段的执行结果为【】。 A="1" B="2" A=Val(A)+Val(B) B=Val("12") IfA<>BThenPrintA-BElsePrintB-A (A)-9(B)9(C)12-12(D)0 17.下列程序段的执行结果为【】。 A=75 IfA>6OThenI=1 IfA>70ThenI=2 IfA>80ThenI=3 IfA>90ThenI=4 Print"I=";I (A)I=1(B)I=2(C)I=3(D)I=4 18.下列程序段的执行结果为【】。 A="abed" B="bcde" E=Right(A,3) F=Mid(B,2,3) IfE (A)cdebcd(B)cdd(C)cdcd(D)bcdcde 19.下列程序段的执行结果为【】。 A=75 IfA>60Then I=1 ElseIfA>70Then I=2 ElseIfA>80Then I=3 ElseIfA>9Othen I=4 EndIf Print"I=";I (A)I=1(B)I=2(C)I=3(D)I=4 20.下列程序段的执行结果为【】 A=1: B=O SelectCaseA Case1 SelectCaseB CaseO Print"**O**" Casel Print"**1**" EndSelect Case2 Print"**2**" EndSelect (A)**O**(B)**1**(C)**2**(D)O 21.下列程序段的执行结果为【】。 x=Int(Rnd+4) SelectCasex Case5 Print"优秀" Case4 Print"良好" Case3 Print"通过" CaseElse Print"不通过" EndSelect (A)优秀(B)良好(C)通过(D)不通过 三、程序填空 1.以下程序用于判断输入的年份是否是闰年。 如果年份能被4整除但不能被100整除,或者年份能被 400整除,则该年为闰年;否则不是闰年。 PrivateSubCommand1_Click() y=InputBox("请输入年份") If (1)Then Printy&"年为闰年" Else Printy&"年不是闰年"L EndIf EndSub 2.下面的程序用于求三个数中的最大数、最小数。 PrivateSubCommand1_Click() a=Val(InputBox("请输入第一个数")) b=Val(InputBox("请输入第二个数")) C=Val(InputBox("请输入第三个数")) Max=a Min=a Ifb> (1)ThenMax=b Ifb< (2)ThenMin=b If(3)ThenMax=c If(4)ThenMin=c Print"最大数为";Max Print"最小数为";Min EndSub 22.以下程序判断从文本框Text1中输入的数据,如果该数据满足条件: 除以3余2,除以5余3,除以7余 4,则输出;否则将焦点定位在文本框Text1中,选中其中的确文本。 PrivateSubCommand1_Click() x=Val(Text1.Text) If (1)Then Printx Else (2) (3) (4) EndIf EndSub 23.下面的程序用于根据文本框A中输入的内容进行以下处理: 当A<6.6时,打印"A<6.6";当A=6.6 时,打印"A=6.6";当A>6.6时,打印"A>6.6"。 PrivateSubCommand1_Click() If (1)Then Print"A<6.6" (2)Val(A.Text)=6.6Then Print"A=6.6" Else Print"A>6.6" (3) EndSub 24.下面的程序用于根据文本框X中输入的内容进行以下处理: 若X为2、4、6,则打印"X的值为2、4、 6";若X为3、5,则打印"X的值为3、5";若X为7、8,则打印"X的值为7、8";否则,打印"X不在 范围内"。 PrivateSubCommand1_click() SelectCaseVal(X.Text) Case (1) Print"X的值为2、4、6" Case (2) Print"X的值为3、5" Case(3) Print"X的值为7、8" (4) Print"X不在范围内" EndSelect EndSub 25.下面程序用来计算: A+B(A>5) N=B/A(A=5) 0(A<5) PrivateSubCommand1_C1ick() A=Val(Text1.Text) B=val(Text2.Text) SelectCaseA Case (1) N=A+B Case (2) N=B/A Case(3) N=O EndSelect Text3.Text=N EndSub 第六章循环结构程序设计 一、判断程序或程序段的执行结果 26.下列程序段的执行结果为【】。 I=0 ForG=10To19Step3 I=I+1 NextG PrintI (A)4(B)5(C)3(D)6 27.下列程序段的执行结果为【】。 X=0 ForK=1To10Step2 X=X+K NextK PrintK;X (A)-16(B)-116(C)16(D)1131 28.下列程序段的执行结果为【】。 K=0 ForI=1To3 A=I^I^K PrintA NextI (A)111(B)149(C)000(D)123 29.下列程序段的执行结果为【】。 N=10 ForK=NTo1Step-1 X=Sqr(K) X=X-2 NextK PrintX-2 (A)-3(B)-1(C)1(D)1.16227765 30.下列程序段的执行结果为【】。 X=1 Y=1 ForI=1To3 F=X+Y X=Y Y=F PrintF NextI (A)236(B)222(C)234(D)235 31.下列程序段的执行结果为【】。 A="ABBACDDCBA" ForI=6To2Step-2 X=Mid(A,I,I) Y=Left(A,I) Z=Right(A,I) Z=X&Y&Z NextI PrintZ (A)ABA(B)AABAAB(C)BBABBA(D)ABBABA 32.给出下面程序段的输出结果【】。 ForX=1.5To5Step1.5 PrintX NextX 33.给出下面程序段的输出结果【】。 ForI=-5To–LoStep-1 X=X+I PrintX NextI 34.给出下面程序段的输出结果【】。 Z="ABCDEFGABCDEFG" ForI=6To2Step-3 U=String(I,Z) V=Left(Z,I) W=Mid(Z,I,I) X=Right(Z,I) Y=X+W+V+U NextI PrintU,V,W,X,Y 35.给出下面程序段的输出结果【】。 ForI=OTo3 PrintTab(4*I+1);I;"2"&I NextI 36.给出下面程序段的输出结果【】。 其中,Trim函数用于去除字符串前后的空格。 ForI=1To7 PrintTab(8-I);String(I,Trim(Str(I))) NextI 37.下列程序段的执行结果为【】。 A=0: B=1 Do A=A+B B=B+1 LoopWhileA<10 PrintA;B (A)105(B)AB(C)01(D)1030 38.下列程序段的执行结果为【】。 I=4 A=5 Do I=I+1 A=A+2 LoopUntilI>=7 Print"I=";I Print"A=";A (A)I=4(B)I=7(C)I=8(D)I=7 A=5A=13A=7A=11 39.下列程序段的执行结果为【】。 N=O J=1 DoUntilN>2 N=N+1 J=J+N*(N+1) Loop PrintN;J (A)01(B)37(C)321(D)313 40.给出下面程序段的输出结果【】。 P=O S=0 Do P=P+2 S=S+P LoopWhileP<11 Print"S=";S 41.给出下面程序段的输出结果【】。 M1=1 M2=1 DoWhileM2<>6 M1=M1*M2 M2=M2+1 Loop Print"M1=";M1,"M2=";M2 42.下列程序段的执行结果为【】。 N=0 ForI=1To3 ForJ=5To1Step-1 N=N+1 NextJ NextI PrintN;J;I (A)1204(B)1504(C)1231(D)1531 43.下列程序段的执行结果为【】。 A=0 B=0 ForI=-1To–2Step-1 ForJ=1To2 B=B+1 NextJ A=A+1 NextI PrintA;B (A)24(B)-22(C)42(D)23 44.下列程序段的执行结果为【】。 K=0 ForJ=1To2 ForI=1To3 K=I+1 NextI ForI=1To7 K=I+1 NextI NextJ PrintK (A)10(B)6(C)11(D)16 45.下列程序段的执行结果为【】。 ForX=5To1Step-1 ForY=1To6-X PrintTab(Y+5);"*"; Nexty Print NextX (A)*****(B)*****(C)*(D)* ************* ************** *************** **************** 46.下列程序段的执行结果为【】。 S=0: T=0: U=O ForX=1To3 ForY=1ToX ForZ=YT03 S=S+1 NextZ T=T+1 NextY U=U+1 NextX PrintS;T;U (A)3614(B)1463(C)1436(D)1643 47.给出下面程序段的输出结果【】。 Fora=1To6 PrintTab(7-a); Forb=1To2*a-1 Print"*"; Nextb Nexta 48.给出下面程序段的输出结果【】。 N=1 Do Fork=NTo5 Print"*"; Nextk Print N=N+1 LoopUntilN>5 49.给出下面程序段的输出结果【】。 ForA=OTo1 ForB=1To2 ForC=2To3 Print(A=OOrB=1)And(C=2AndA=B)OrNot(C=3); NextC NextB NextA 50.给出下面程序段的输出结果【】。 DimiAsInteger,jAsInteger,kAsInteger k=0 Fori=OTo10Step3 Forj=1To10 Ifj>5Thenk=k+4: ExitFor k=k+1 Nextj PrintI,k Ifi>8ThenExitFor Nexti Printi,k 二、程序填空 3.以下程序用来产生20个(0,99)之间的随机整数,并将其中的偶数打印出来。 PrivateSubCommand1_Click() Randomize ForI=1To20 X=Int(Rnd* (1)) IfX/2= (2)ThenPrintX NextI EndSu b 4.以下程序用来计算由键盘输入的N个数中正数之和,负数之和,正数的个数,负数的个数。 其中用C 累加负数之和,IC累加负数的个数,D累加正数之和,ID累明加正数的个数。 PrivateSubCommand1_Click() N=lO C=0: IC=0: D=0: ID=O Fork=IToN A=Val(InputBox("请输入A")) IfA (1): (2) IfA>OThenD=(3): (4) Nextk Print"负数的个数为: ",IC Print"负数的和为: ",C Print"正数的个数为: ",ID Print"正数的和为: ",D EndSub 51.下面是一个体操评分程序。 20位评委,除去一个最高分和一个最低分,计算平均分(设满分为100 分)。 PrivateSubCommand1_Click() Max=0 Min=10 ForI=1To20 N=Val(InputBox("请输入分数")) If (1)ThenMax=N If (2)ThenMin=N S=S+N NextI S=(3) P=S/18 Print"最高分";Max,"最低分";Min Print"最后得分: ";P EndSub 52.搬砖问题: 36块砖,36人搬,男的搬4块,女的搬3块,2个小儿抬1块,要求1次全部搬完,问需男、女、 小儿各多少人。 PrivateSubCommand1_click() ForMale=1To9 ForFemale=1To12 ForBoy=2To36Step2 IfBoy+Female+Male=36And (1)Then PrintMale,Female,Boy EndIf NextBoy NextFemale NextMale EndSub 53.以下程序用于计算N=1+(1+3)+(1+3+5)+⋯+(1+3+5+⋯+39)。 PrivateSubCommand1_Click() T=O M=1 Sum=0 Do T=T+ (1) Sum=Sum+ (2) M=M+2 LoopWhile(3) Print"Sum=";Sum EndSub 54.以下程序用于计算数学表达式1^2-2^2+3^2-4^2+...+(N-1)^2-N^2。 PrivateSubCommand1_Click() N=val(InputBox("请输入大于零的偶数N: ")) S=0 I=1 C=1 Do S=S+C*I*I C= (1) I= (2) LoopWhile(3) Print"S=";S EndSub 55.以下程序用于求S=1+3+3^2+3^3+⋯+3^10的值。 PrivateSubCommand1_Click() S= (1) T=1 ForI=1To10 T= (2) S=S+T NextI Print"S=";S EndSub 56.以下程序输入N个书名,并将书名中含有连续3个字母COM的所有书名显示出来。 PrivateSubCommand1_Click() n=InputBox("请输入数量: ") Fori=1Ton bookname=InputBox("请输入书名: ") l=Len (1) Ifl>=3Then If (2)ThenPrintbookname EndIf Nexti EndSub 57.以下程序用于在带垂直滚动条的文本框Textl中输出3到100之间的全部素数。 PrivateSubCommand1_Click() Text1.Text=" ForN=3TolOO K=Int(sqr(N)) I=2 Flag=O DOWhileI<= (1)AndFlag=0 IfNModI=OThenFlag=1ElseI=I+1 Loop If (2)Then Text1.Text=Text1.Text&Str(N)&Chr(13)&Chr(10) EndIf NextN EndSub 58.以下程序用来输出20个在开区间(10,87)中的随机整数R,每行输出4个整数。 PrivateSubCommand1_Click() ForI=1To20 R= (1) PrintR; If (2)ThenPrint NextI EndSub 59.以下程序在文本框Text1中输入任一字符串,并按相反的次序显示在文本框Text2中。 PrivateSubCommand1_Click() DimNAsString,CASString,DASString N=Text1.Text M= (1) ForI=MTo1Step–1 C=Mid(N,I,1) D=D& (2) NextI (3)=D EndSub 60.以下程序用于在单击图片框Picture1时显示图6_1所示的结果。 PrivateSubPicture1_Click() Picture1.PrintTab(5);"*" ForI=1To4 Picture1.Print (1) NextI ForI=3To1Step–1 Picture1.Print (2) NextI Pi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vb 考试 复习 习题
![提示](https://static.bdocx.com/images/bang_tan.gif)