BB平台VB程序匹配题_第1页
BB平台VB程序匹配题_第2页
BB平台VB程序匹配题_第3页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、问题32.25分保存从键盘输入一段英文文章(都是小写字母),统计一下该段文章中26个英文字母的使用情况。1. PrivateSubForm_Click()Dimc(1To26)AsIntegerDimnAsInteger,kAsIntegerDimsAsString,xsAsStringFori=1To26c(i)=0Nexti(1)(2)Fori=1Ton(3)Ifxs>="a"Andxs<="z"ThenEndIfNextiFori=1To26PrintChr(96+i);""c(i)NextiEndSub区2.(5)

2、n=Len(s)c(k)=c(k)+1k=Asc(xs)-96s=InputBox("s=")xs=Mid(s,i,1)问题42.25分保存单击窗体,产生20个从1到600之间的随机整数,并以每行5个把数据显示在窗体上,并在窗体上显示20个数据中的所有偶数之和。PrivateSubForm_Click()s=0Fori=1To20RandomizePrintx;(3)If(4)Thens=s+x1. Nexti(5)区户.折,EndSubIfimod5=0ThenPrintDimiAsInteger,xAsInteger,sasLong问题5Print"s=&qu

3、ot;sxMod2=0x=Int(600*Rnd+1)2.25分保存实现文本框的复制、剪切、粘贴、删除功能PrivateSubCommand1_Click()(1)Clipboard.SetTextText1.SelTextEndSubPrivateSubCommand2_Click()Clipboard.ClearEndSubPrivateSubCommand3_Click()EndSubPrivateSubCommand4_Click()(5)EndSub田4(1)1.Text1.SelText=""2. Textl.SelText=""Textl.

4、SelText=Clipboard.GetTextClipboard.ClearClipboard.SetTextTextl.SelText问题62.25分调用VB的RND和INT函数,在当前工作表的A列的1T0行输入序号1T0,B列的1T0行填入0T之间的随机数,C列的1T0行填入两位正整数,最后在C列的11行求出该列的最大数(调用EXCEL的内部MAX函数)。Subrandom()DimiAsInteger,cAsStringFori=1To10NextiFori=1To10(3)Range(c)=RndNextiFori=1To10c="C"&iNexti(5

5、)EndSubj2J5.F2.n(1)(2)EU(31.SI)(4)4Bl3,(5)1 c="B"&iRange(c)=iRange("C11”)=Application.WorksheetFunction.Max(Range("C1:C10")Range(c)=Int(Rnd*90)+10c="A"&i保存问题72.25j编制Form_Click过程,用近似公式求自然对数的底数e的值,直到末项小于10-4为止,结果显示在窗体上。PrivateSubForm_Click()DimsAsSingle,xAsSi

6、ngle,aAsSinglea=1(1)i=1Do(2)(3(4)Loop(5)EndSub1111£都1+4-+一一一+II2!3则Whilea>=0.0001Print"e="ss=s+aa=a/is=1问题82.25分保存从键盘输入一个字符串,然后将该字符串中的每个字符按ASCII码值的大小从小到大进行重新组合输出。如:输入abc123XYZ,处理后应输出123XYZabc。(难度系数*)PrivateSubForm_Click()Dimc(100)AsStringDimnAsIntegerDimsAsString,ncAsString,tempAsS

7、trings=InputBox("s=")(1)Fori=1TonFori=1Ton-1Forj=i+1Ton(3)(4)c(i)=c(j)c(j)=tempEndIfNextjNextinc=""Fori=1Ton(5)NextiPrintncEndSub函4剧四5.由3-(3)丽2剧函'I(5)1. nc=nc&c(i)2. temp=c(i)3. Ifc(i)>c(j)Then4. n=Len(s)5. c(i)=Mid(s,i,1)问题92.25分保存利用二维数组编程输出“杨辉三角形”图案,图案行数n从键盘输入。Privat

8、eSubForm_Click()Dimx()AsIntegerDimnAsIntegerFori=2TonForj=1ToiNextjNextiFori=1TonForj=1ToiPrintx(i,j);Nextj(5)NextiEndSub血3.T此囹5.囹m1. PrintRedimx(n,n)n=InputBox("n=")x(i,j)=x(i-1,j)+x(i-1,j-1)x(1,1)=1""5)问题102.25分保存随机产生100个学生的成绩(35-98之间),统计各分数段的人数。即09、1019、2029、3039、4049、5059、606

9、9、7079、8089、9099,并输出结果。PrivateSubForm_Click()Dima(1To100)AsInteger(1)Fori=1To100(2)NextiFori=0To9c(i)=0Nexti(3)(4)c(k)=c(k)+1Nexti(5)Print10*i;""10*i+9;"-"c(i)NextiEndSub,3.心11.Fori=1To100Fori=0To9Dimc(9)AsIntegerk=Int(a(i)/10)a(i)=Int(Rnd*64)+35问题112.25分保存建立一个“猜数程序”。单击窗体,产生一个2位的

10、随机正整数。在文本框Textl中输入你猜测的数字,单击按钮Commandl在窗体上显示猜测结果:如果你输入的数字比程序生成的随机数要大,则显示“大了”;如果比程序生成的随机数要小则“小了”;然后继续输入数字进行猜测。如果猜中,则显示“恭喜你猜中啦!”,并用消息框显示一共猜了几次。DimnAsInteger,kAsIntegerRandomizeEndSubPrivateSubCommand1_Click()DimxAsIntegerk=k+1Ifx>nThenPrintx;"大了"Printx;"小了Else问题12Printx;"MsgBoxEn

11、dIf(5)恭冒你猜中了!"一共猜了"&k&"次”n=Int(Rnd*90)+10PrivateSubForm_Click()ElseIfx<nThenEndSubx=Text1.Text2.25分单击窗体,从输入框InputBox输入x和n,并计算下列表达式的值,直至末项小于为止,结果显示在窗体。PrivateSubForm_Click()DimsAsSingle,xAsSingle,aAsSinglex=Val(InputBox("输入x")(1)s=1i=0Do(3)s=s+a保存Loop(5)EndSubE=1+X

12、+213!问题13i=i+1a=a*x/iPrint"s="sWhilea>=0.00001a=12.25分保存从1到10000中找出这样的数,该数各个位的数字的阶乘相加之和等于该数,并将结果输出。已知fact函数用于计算阶乘。PrivateFunctionfact(ByValkAsInteger)AsLongDimiAsIntegerFori=2Tokfact=fact*iNextiEndFunctionPrivateSubForm_Click()Dimkasinteger,aasstring,naslong,iasintegerDimpAsIntegerFork=

13、1To10000n=0Fori=1ToLen(a)(4)Nexti(5)NextkEndSub问题141.fact=12. Ifn=kThenPrintk3. n=n+fact(p)4. p=Val(Mid(a,i,1)5. a=CStr(k)2.25分输入10个数放入数组中,将第1个数移到最后位置,其余数依次往前移动一个位置。保存PrivateSubForm_Click()DimtAsIntegerFori=1To10NextiFori=1To10Printx(i);NextiPrintFori=1To10-1(4)Nextix(10)=tFori=1To10(5)NextiPrintEnd

14、Sub1. Dimx(10)AsIntegerx(i)=InputBox("x(&")=")Printx(i)t=x(1)x(i)=x(i+1)Ep._W2.?4.IHI更3.U问题152.25分保存随机产生200个互不相等的三位正整数并按每10个一行输出PrivateSubForm_Click()Dima(200)AsIntegerDimkAsInteger,xAsIntegerDimfAsInteger(1)DoWhilek<200x=Int(Rnd*900)+100f=1Fori=1TokIfa(i)=xThen(2)Nexti(3) Iff=

15、1ThenEndifLoopFori=1TokPrinta(i);(5)1. NextiEndSubk=k+12. f=03. a(k)=x4. IfiMod10=0ThenPrintk=0问题162.25分保存随机产生10个6T00之间的偶数,对每个数进行哥德巴赫猜想(GoldbachConjecture)验证。其中判断一个整数是否为素数用以下Prime函数。FunctionPrime(xAsInteger)AsBooleanDimiAsIntegerPrime=TrueFori=2Tox-1IfxModi=0ThenPrime=FalseExitForEndIfNextiEndFuncti

16、onSubGoldbach()DimiAsInteger,aAsInteger,bAsIntegerActiveSheet.Cells.ClearCells(1,1)=">6Cells(1,2)="第一个素数"(1)(2) Fori=1To10NextiFori=2To11IfPrime(a)AndPrime(Cells(i,1)-a)ThenExitForEndIfNextaNextiEndSub问题17Ac1沌的偶数第一个素数第二个素数29S197933653146235956876151631312231984033797637310945891132

17、3791. Cells(1,3)="第二个素2. 数"Cells(i,2)=aFora=3ToCells(i,1)/2Cells(i,3)=Cells(i,1)-aCells(i+1,1)=(Int(Rnd*48)+3)*22.25分单击窗体,根据输入框所输入的百分制成绩score,在窗体上显示相应的等级,即"优秀”(score>=90)、"良好"(80<=score<90)、“中”(70<=score<80)、“及格”(60<=score<70)、“不及格”(score<60)。保存Privat

18、eSubForm_click()(1)score=Val(InputBox("请输入成绩")If(2)ThenPrint"优秀"Elselfscore>=80ThenPrint"良好"Elselfscore>=70ThenPrint”中”ElsePrint"不及格(5)EndSubPrint"及格"EndIfElseIfscore>=60ThenDimscoreAsIntegerscore>=90问题182.25分保存单击窗体,从输入框InputBox输入一个整数,判断其是否为素数

19、。例如输入7,则屏幕上显示“7是素数”;如果输入的是9则屏幕上显不'“9不是素数”。1. PrivateSubForm_Click()DimiAsInteger,nAsInteger,PrimeAsStringn=Val(InputBox("n=")Ifn<2ThenElseIfnModi=0ThenExitForNextiElsePrime="不是素数"EndIfEndIf(5)EndSubPrime="不是素数Fori=2Ton-1Ifi>n-1ThenPrintn&PrimePrime="是素数&qu

20、ot;问题八保2.25分-19存1、在文本框Textl中输入一个正整数,单击按钮Commandl,判断该数的奇偶性,结果显示在标签框label2中,要求偶数用蓝色显示,奇数用红色显示。PrivateSubCommand1_Click()DimxAsIntegerIf(2)ThenLabel2.ForeColor=vbBlue(4)(5)Label2.Caption=x&是奇数"EndIfEndSub问题201. xMod2=0ElseLabel2.ForeColor=vbRedx=Val(Textl.Text)Label2.Caption=x&是偶数"2.2

21、5分保存编写程序,在工作表上打印九九乘法表如下。Subprint99()DimiAsInteger,jAsIntegerFori=1To9Cells(1,i+1)=iCells(i+1,1)=iNexti(2)NextjNextiRange("A:A").Font.Bold=TrueRange("A:A").HorizontalAlignment=xlCenter(5)Range("1:1").HorizontalAlignment=xlCenterRange("1:1”).Font.Bold=TrueCells(i+1,j

22、+1)=iFori=1To9ActiveSheet.Cells.ClearForj=iTo9问题212.25分保存在工作表1上创建“控件工具箱”命令按钮“产生数据”(CommandButton1)和"判断"(CommandButton2)。单击“产生数据”按钮完成在A1:A10上产生两位随机正整数;单击“判断”按钮完成将其中重复数用红色标注。(2) PrivateSubCommandButton1_Click()DimiAsIntegerFori=1To10(2)NextiEndSubPrivateSubCommandButton2_Click()DimiAsInteger

23、,jAsIntegerFori=1To9(3)EndIfNextiEndSub艺I3,(1)艺4,P.mH2IHI寻5.司(5)Forj=i+1To10IfCells(i,1)=Cells。,1)ThenActiveSheet.Cells.ClearCells(i,1)=Int(Rnd*90)+10Cells(j,1).Font.ColorvbRed问题222.25分保存从文本框Text1输入一个二进制正整数,单击窗体,在窗体上打印出相应的十进制数;且文本框中只允许输入0和1。PrivateSubForm_Click()DimsAsString,aAsString,nAsInteger,xAs

24、Long(1)n=Len(s)Fori=1Tonx=x+Val(a)*2A(i-1)NextiEndSubPrivateSubText1_KeyPress(KeyAsciiAsInteger)If(4)Then(5)EndIfEndSubKeyAscii<Asc("0”)OrKeyAscii>Asc("1")PrintxKeyAscii=0s=Textl.Texta=Mid(s,n+1-i,1)保存问题232.25分随机产生两位数的整数放入一个5行5列的二维数组中,求该二维数组对角线上最大值所在的行和列。PrivateSubForm_Click()Di

25、ma(1To5,1To5)AsInteger,maxAsIntegerDimpiAsInteger,pjAsIntegerRandomizeFori=1To5Forj=1To5(4) a(i,j)=Int(Rnd*90+10)NextjNextiFori=1To5Forj=1To5Printa(i,j);Nextj(1)Nextimax=a(1,1)(2)Pj=1Fori=1To5Forj=1To5(3)(4)max=a(i,j)pi=iEndIfEndIfNextjPrint"对角线上最大值在第"pi;-行和第"pj;"列"EndSub1.

26、pi=1Ifi=jOri+j=6Thenpj=jPrintIfmax<a(i,j)Then:.4二1.7一.互EndSubPrivateSubForm_Click()Dima(10)AsIntegerDimiAsInteger,jAsIntegerFori=1To10a(i)=Int(Rnd*21)+30'-ZmPIPI(5)问题242.25分保存产生10个30,50的随机整数,并按从小到大的顺序打印出来,要求调用Swap子过程。PublicSubSwap(aAsInteger,bAsInteger)DimtempAsIntegertemp=a(1)(2)Forj=i+1To10

27、Ifa(i)>a(j)Then(3)EndIfNextjNexti1. (5)EndSubCallSwap(a(i),a(j)a=bb=tempForm1.printa(10)Form1.Printa(i);问题25保2.25分十存输入n后,再输入n个数a1,a2,.,an,按照下列公式计算s的值并显示。已知求v值的函数过程f程序如下。编写事件过程Command1_Click(),计算s值,其中v值要求调用函数过程f来完成。PrivateFunctionf(x()AsSingle,nAsInteger)assingleDimiAsIntegerFori=1Ton(1)Nexti(2)En

28、dFunctionPrivateSubCommand1_Click()Dima()AsSingle,nAsInteger,sAsSingleDimvAsSingle,iAsIntegern=InputBox("请输入n的值")(3)Fori=1Tona(i)=InputBox("")Nexti(4)Fori=1Tons=s+(a(i)-v)A2Nexti(5)PrintsEndSub口】+气+冬或气W+谿-'导+7,项a.f尸v-=s1. f=f/n2. ReDima(n)3. f=f+x(i)4. s=Sqr(s)/n5. v=f(a,n)血血

29、72.为5顼4)?4(5)问题262.25分保存验证哥德巴赫猜想一次于6的偶数可以分解为两个素数之和,通过调用函数过程实现判断任一输入的正整数是不是素数。PrivateFunctionprime(ByValnAsInteger)AsBooleanDimiAsInteger(1)Fori=2ToSqr(n)(2)NextiEndFunctionPrivateSubForm_Click()Dimn1AsInteger,n2AsInteger,nAsIntegerDon=InputBox("输入一个大于6的偶数")LoopWhilen<=6OrnMod2<>0F

30、orn1=3Ton/2Step2(5)ExitForEndIfNextn1EndSub互5.T或.(2)IHI国2.艺4.(5)保存1. IfnModi=0Thenprime=False:ExitForIfprime(n1)Andprime(n2)Thenn2=n-n1Printn;"="n1;"+"n2prime=True问题272.25分单击窗体,实现以下的分段函数,其中x从输入框输入,求出y显示在窗体上。PrivateSubForm_Click()Ifx<-5Theny=3*xA2+2*x-1y=x*Sin(x)+2axElsey=Sqr(x

31、-5)+Log(x)/Log(10)(4)(5)EndSub3x+2x1x<5.y=xsinx+-5<=x<=5Vx-54-log10xx>5艺3.-(1)1.Printy瓦22.x=Val(InputBox("请输入x")?5.3.DimxAsSingle,yAsSingle囱4.4. EndIf5. ElseIfx<=5Then商P.同问题282.25分保存从键盘输入一批英文字母并逐个放入数组中,然后将其中的大写字母转换为小写字母,小写字母转换为大写字母并输出。PrivateSubForm_Click()Dima()AsStringDims

32、AsString,nsAsStringDimnAsIntegers=InputBox("s=")n=Len(s)Fori=1TonNextiFori=1TonIfa(i)>="A"Anda(i)<="Z"ThenElseEndIfNextins=""Fori=1Ton(5)NextiPrintsPrintnsEndSuba(i)=Mid(s,i,1)ReDima(n)a(i)=Chr(Asc(a(i)-32)ns=ns+a(i)a(i)=Chr(Asc(a(i)+32)田2_eP-?5-矛同I4-_(5

33、)保存问题292.25分从输入框InputBox输入n,再从输入框输入这n个整数,要求以每行5个的形式输出这n个数(其中的偶数用红色显示),计算它们的平均值并显示在窗体上。PrivateSubForm_Click()DimnAsInteger,xAsInteger,aveAsSingle,sAsSinglen=Val(InputBox("n")Fori=1Ton(1)IfxMod2=0Then(Else(3)EndIfPrintx;(4)s=s+xNexti(5)PrintPrint"平均值为:"&aveEndSubave=s/nPrintIfi

34、Mod5=0Thenx=Val(InputBox("x")Forml.ForeColor=j(4)vbBlackForml.ForeColor=vbRed1(5)rn问题302.25分保存随机产生25个三位正整数,用选择排序法按从大到小顺序输出。PrivateSubForm_Click()Dima(1To25)AsIntegerDimtAsIntegerFori=1To25(1)Printa(i);NextiPrint(2)(3)(4)t=a(i)a(j)=tEndIfNextjNextiFori=1To25Printa(i);NextiPrintEndSuba(i)=In

35、t(Rnd*900)+100Ifa(i)>a(j)ThenFori=1To24Forj=i+1To25a(i)=a(j)问题312.25分求下面表达式的值,并在窗体上输出。要求m与n的值在窗体单击事件中用Inputbox()函数输入,且同为正整数,m>n。通过函数过程实现求阶乘的功能。保存DimiAsIntegerFori=2Tok(3)NextiEndFunctionPrivateSubForm_Click()DimmAsInteger,nAsIntegerDo,m必须大于n")m=InputBox("m=”,”m>0n=InputBox("n

36、=","n>0")(5)EndSub1. Printfact(m)/fact(n)/fact(m-n)2. PrivateFunctionfact(ByValAsLong3. LoopWhile0Orn<04. fact=fact*i5. fact=1kAsInteger)m<=nOrm<保存问题322.25分编程,在窗体上显示单击窗体的次数。第一次单击时,窗体上以红色显示“第1次单击窗体”;第二次单击时,窗体上以蓝色显示“第2次单击窗体”;第三次单击时,窗体上以绿色显示“第3次单击窗体”,第四次单击时,清除窗体上的信息。第五次单击的效果和

37、第一次一样,以此类推,运行效果如图所示。PrivateSubForm_Click()(2)Ifn=1ThenForm1.ForeColor=vbRedPrint"第1次单击窗体"ElseIfn=2ThenPrint"第2次单击窗体"Elselfn=3ThenForml.ForeColor=vbGreenElseIfn=4ThenForm1.Cls(5)EndIfEndSubft.For&t口|口|区第1次单击窗体第2次单击窗体第3次单击茴体n=n+1n=0Form1.ForeColor=vbBlueDimnAsIntegerPrint"

38、第3次单击窗体"问题332.25分保存单击窗体,从键盘输入三个数,将它们从大到小输出在窗体上。PrivateSubForm_Click()DimxAsSingle,yAsSingle,zAsSinglex=Val(InputBox("x")z=Val(InputBox("z")Ifx<yThenEndIfIfx<zThenEndIft=y:y=z:z=tEndIf(5)EndSub1. Printx,y,zt=x:x=z:z=ty=Val(InputBox("y")Ify<zThent=x:x=y:y=t问

39、题342.25保存单击窗体,输出下列数字图案(行数从输入框InputBox输入)DimnAsInteger(1)(2)Forj=1Ton(3) Ifj<iThen(4) ElseEndIf(5) NextjNextiEndSubmP-IHI?1234-(2)艺5-,mP-lai问题352.25分保存建立一个n行n列的二维数组,n从键盘输入,数组元素值由随机函数产生10,99之间的正整数,求该数组对角线上各元素的平均PrivateSubForm_Click()Dima()AsIntegerDimiAsInteger,jAsIntegerDimsAsSingle,vAsSingleDimnA

40、sIntegern=InputBox("n=")ReDima(n,n)s=0Fori=1TonForj=1Tona(i,j)=Int(Rnd*90+10)(1)(2)Fori=1TonForj=1TonPrinta(i,j);NextjPrintNextiFori=1TonForj=1TonNextjNextiIfnMod2=0Then(4)Else(5)EndIfPrint"v="vEndSub寸.一三更3.S旧5.?4.mp.lai(5)Nextjv=s/(2*n-1)Nextiv=s/(2*n)Ifi=jOri+j=n+1Thens=s+a(i,j

41、)问题362.25分保存单击窗体,从输入框输入一个字符串,判断其是否为“回文”并在窗体上打印结果。“回文”是指字符串顺读与倒读都是一样的,如“潮起潮落,落潮起潮”。PrivateSubForm_Click()DimsAsString,nasIntegers=InputBox(请输入字符串")Fori=1Ton2If(2)ThenEndIfNextiIfi<=n2Then(4)Else(5)EndIfEndSubPrints&"不是回文"Prints&"是回文"Mid(s,i,1)<>Mid(s,n+1-i,1)n=Len(s)ExitFor问题372.25分保存分别在两个文本框中输入年和月份,单击命令按钮Command1在标签框label3中显示该月天数(注意闰年的情况。闰年的判断条件为:年份能被4整除但不能被100整除,或者能被400整除)。DimyAsInteger,mAsIntegery=Val(textl.Text)(1)SelectCasemModCase2(2) If(yMod4=0AndyMod100<>0)Or(y400=0)Then(3) ElseEndIf(4)Label3.Caption="31天&q

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论