VB程序題型總結(jié)_第1頁
VB程序題型總結(jié)_第2頁
VB程序題型總結(jié)_第3頁
VB程序題型總結(jié)_第4頁
VB程序題型總結(jié)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1.隨機(jī)產(chǎn)生一個3位正整數(shù),然后逆序輸出。例如,產(chǎn)生734,輸出437。提示:利用運(yùn)算符“Mod”和“\”將一個3位數(shù)分離出三個個位數(shù),然后將各位連接成一個逆序的3位數(shù)。PrivateSubButton1_Click()HandlesButton1.ClickDima,b,cAsIntegerRandomize()TextBox1.Text=Int(Rnd()*900+100)a=Val(TextBox1.Text)\100b=(Val(TextBox1.Text)-a*100)\10c=TextBox1.TextMod10MsgBox("逆序產(chǎn)生的數(shù)為:"&c&b&a)EndSub2.編寫一個程序,輸入a、b、c三個數(shù),要求按由大到小的順序顯示PrivateSubButton1_Click()HandlesButton1.ClickDima,b,c,tAsSinglea=TextBox1.Textb=TextBox2.Textc=TextBox3.TextIfa<bThent=a:a=b:b=tIfa<cThent=a:a=c:c=tIfb<cThent=b:b=c:c=tMsgBox(a&">"&b&">"&c)EndSub4.利用計(jì)算機(jī)解決古代數(shù)學(xué)問題“雞兔同籠問題”。即已知在同一籠子里有總數(shù)為M只雞和兔,雞和兔的總腳數(shù)為N只,求雞和兔各有多少只?PrivateSubTextBox2_LostFocus()HandlesTextBox2.LostFocusDimx,y,M,NAsIntegerM=Val(TextBox1.Text)N=Val(TextBox2.Text)IfNMod2<>0ThenMsgBox("輸入的總腳數(shù)非偶數(shù),請重新輸入",,"提示")y=N/2-Mx=M-yIfx<0Ory<0ThenMsgBox("求得的解是荒唐解,請重新輸入數(shù)據(jù)!",,"提示")ElseLabel2.Text=x&Space(4)&yEndIfEndSub自己的思路(答案是對的):PrivateSubButton1_Click()HandlesButton1.ClickDimx,y,M,NAsIntegerM=TextBox1.TextN=TextBox2.TextIf(4*M-N)/2Mod1=0And(N-2*M)/2Mod1=0Thenx=(4*M-N)/2y=(N-2*M)/2MsgBox("雞有"&x&"只;兔子有"&y&"只")ElseMsgBox("請重新輸入M,N")EndIfEndSub5.用單循環(huán)顯示有規(guī)律圖形,如圖所示。PrivateSubButton1_Click()HandlesButton1.ClickDimsAsString="★★★★★★★★★★★★★★★★★★★★"'DimzsAsStringDimiAsIntegerLabel1.Text=""Fori=0To9Step1zs=Mid(s,1,2*i+1)Label1.Text&=Space(18-2*i)&zs&vbCrLfNextEndSub自己的方法(答案正確):PrivateSubButton1_Click()HandlesButton1.ClickDimiAsIntegerFori=1To10Label1.Text&=Space(20-2*i)&StrDup(2*i-1,"★")&vbCrLfNextiEndSub6.篩選字母字符并逆序存放。PrivateSubButton1_Click()HandlesButton1.ClickDimi,mAsIntegerDimaAsCharm=Len(TextBox1.Text)TextBox2.Text=""Fori=1Toma=Mid(TextBox1.Text,i,1)IfUCase(a)>="A"AndUCase(a)<="Z"ThenTextBox2.Text=a&TextBox2.TextEndIfNextEndSub7.編寫一程序,顯示所有的水仙花數(shù)。所謂水仙花數(shù)是指一個3位數(shù),其各位數(shù)字立方和等于等于該數(shù)字本身。例如,153是水仙花數(shù),因?yàn)?53=13+53+33。PrivateSubForm1_Load()HandlesMyBase.LoadLabel1.Text="水仙花數(shù)"&vbCrLfDimx,i,j,k,nAsIntegern=0Forx=100To999i=x\100j=(xMod100)\10k=xMod10Ifx=i^3+j^3+k^3Thenn+=1Label1.Text&=x&Space(4)IfnMod3=0ThenLabel1.Text&=vbCrLfEndIfEndIfNextEndSub自己做的答案(正確):PrivateSubButton1_Click()HandlesButton1.ClickDimx,a,b,cAsIntegerForx=100To999a=x\100b=(x-a*100)\10c=xMod10Ifx=a^3+b^3+c^3ThenLabel1.Text&=x&""NextxEndSub8.求Sn=a+aa+aaa+aaaa+…+aa…aaa(n個a),其中a是通過滾動條獲得的一個1~9(包括1,9)中的一個正整數(shù),n是通過滾動條獲得的5~10(包括5,10)中的一個數(shù)。PrivateSubHScrollBar2_Scroll()HandlesHScrollBar2.Scroll,HScrollBar1.ScrollDima,n,s,tempAsLongs=0a=HScrollBar1.ValueLabel1.Text="a="&an=HScrollBar2.ValueLabel2.Text="n="&ntemp=0Label3.Text="sum="Forj=1Tontemp=temp*10+as=s+tempLabel3.Text&=tempIfj<>nThenLabel3.Text&="+"EndIfNextLabel3.Text&="="&sEndSubPrivateSubHScrollBar1_Scroll()HandlesHScrollBar1.Scroll,HScrollBar2.ScrollDima,n,s,tempAsLongs=0a=HScrollBar1.ValueLabel1.Text="a="&an=HScrollBar2.ValueLabel2.Text="n="&ntemp=0Label3.Text=""Forj=1Tontemp=temp*10+as=s+tempLabel3.Text&=Space(18-j)&temp&vbCrLfNextLabel3.Text&="-------------------------------"&vbCrLf&Space(18-n)&sEndSub9.創(chuàng)建WINDOWS應(yīng)用項(xiàng)目,可重復(fù)性地隨機(jī)產(chǎn)生10個30~100(包括30和100)的正整數(shù),顯示整個數(shù)組,求出并顯示最大值、最小值和平均值。PrivateSubButton1_Click()HandlesButton1.ClickDima%(9),i%,min%,max%,aver!Randomize()a(0)=Int(Rnd()*71+30)min=a(0):max=a(0):aver=a(0)Label1.Text=a(0)&""Fori=1To9a(i)=Int(Rnd()*71+30)Label1.Text&=a(i)&""Ifmin>a(i)Thenmin=a(i)Ifmax<a(i)Thenmax=a(i)aver+=a(i)Nextiaver=aver/10MsgBox("最大值為:"&max&";最小值為:"&min&"平均值為:"&aver)EndSub10.已知有6個學(xué)生的成績,通過對數(shù)組賦初值的方法,以每5分為一個“★”顯示,并顯示產(chǎn)生的成績PrivateSubButton1_Click()HandlesButton1.ClickDima()AsInteger={71,53,58,29,30,78},i%Fori=0ToUBound(a)Label1.Text&=StrDup(a(i)\5,"★")&a(i)&vbCrLfNextiEndSub11.編寫程序完成,隨機(jī)產(chǎn)生20個[10,100]之間的整數(shù),輸出這20個數(shù),并求這批數(shù)的最大值及最大值位置。PrivateSubButton1_Click()HandlesButton1.ClickDima%(19),i%,n%,max%Randomize()a(0)=Int(Rnd()*91+10):max=a(0)Label1.Text=a(0)&""Fori=1To19a(i)=Int(Rnd()*91+10)Ifmax<a(i)Thenmax=a(i):n=i+1Label1.Text&=a(i)&""NextLabel1.Text&=vbCrLfLabel1.Text&="最大值為:"&max&";為第"&n&"個數(shù)"EndSub12.在通用聲明段聲明兩個數(shù)組,并對數(shù)組賦初始值,形成如下兩個矩陣:要求:用下三角形式顯示A矩陣、上三角形式顯示B矩陣。求A矩陣兩條對角線元素之和。DimA(,)AsInteger={{35,67,52,50},{33,47,66,39},{47,56,66,41},{30,69,55,38}}DimB%(,)={{103,115,125,101},{133,127,132,135},{111,103,134,118},{123,109,113,130}}PrivateSubButton1_Click()HandlesButton1.ClickLabel1.Text="":Label2.Text="":Label3.Text=""Dimi%,j%,sum1%Fori=0To3Forj=0To3Label1.Text&=A(i,j)&""NextLabel1.Text&=vbCrLfNextFori=0To3Label2.Text&=Space(i*4)Forj=iTo3Label2.Text&=B(i,j)&""NextLabel2.Text&=vbCrLfNextFori=0To3Forj=0To3Ifj=iOrj=3-iThensum1+=A(i,j)EndIfNextNextLabel3.Text="A數(shù)組對角線元素和為"&vbCrLf&sum1EndSub13.參考教材例,編一求兩數(shù)m,n最大公約數(shù)的函數(shù)f(m,n)。主調(diào)程序在兩個文本框中輸入數(shù)據(jù),在TextBox3框中顯示結(jié)果Functionf(ByVala%,ByValb%)AsIntegerDimr%,t%Ifa<bThent=a:a=b:b=tr=aModbDoWhiler<>0a=b:b=r:r=aModbLoopReturnbEndFunctionPrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickDimm%,n%m=Val(TextBox1.Text)n=Val(TextBox2.Text)Label4.Text&=m&Space(10-Len(Trim(m)))&n&Space(10-Len(Trim(n)))&f(m,n)&vbCrLfEndSub14.編一子過程ProMin(ByRefa%(),ByRefamin%),求一維數(shù)組a中的最小值amin。PublicClassForm1SubProMin(ByVala%(),ByRefamin%)Dimi%amin=a(0)Fori=1ToUBound(a)Ifa(i)<aminThenamin=a(i)NextEndSubPrivateSubButton1_Click()HandlesButton1.ClickDima%(9),i%,a1%Randomize()TextBox1.Text="":Label2.Text=""Fori=0ToUBound(a)a(i)=Int(Rnd()*101-400)TextBox1.Text&=a(i)&""NextCallProMin(a,a1)Label2.Text&="數(shù)組中的最小值為:"&a115.編一子過程MaxLength(s,MaxWord),在已知的字符串s中,找出最長的單詞MaxWord。假定字符串s內(nèi)只含有字母和空格,空格分隔不同的單詞。FunctionMaxLength(ByValsl$)AsStringDimn%,sq$n=InStr(sl,"")MaxLength=""DoWhilesl<>""sq=Microsoft.VisualBasic.Left(sl,n-1)IfLen(sq)>Len(MaxLength)ThenMaxLength=sqEndIfsl=Mid(sl,n+1)n=InStr(sl,"")Ifn=0Thenn=Len(sl)+1EndIfLoopEndFunctionPrivateSubButton1_Click()HandlesButton1.ClickDims$s$=Trim(TextBox1.Text)TextBox2.Text=MaxLength(s)EndSub16.編寫過程實(shí)現(xiàn),查找用戶輸入的一行文字中是否含有“VB”,如果有,輸出“VB”出現(xiàn)的次數(shù)。PrivateSubTextBox1_KeyPress()HandlesTextBox1.KeyPressLabel1.Text=""Dims$,s1$,n%,sum%DimflagAsBooleanIfAsc(e.KeyChar)=13Thens=TextBox1.Texts1="VB"n=InStr(s,s1)sum=0Ifn>0Thenflag=TrueDoWhilen>0sum+=1s=Mid(s,n+2)n=InStr(s,s1)LoopEndIfIfflagThenLabel1.Text="輸入的文字中含有""VB"",出現(xiàn)的次數(shù)為:"&sum&"次"ElseLabel1.Text="輸入的文字中不含有""VB"""EndIfEndIfEndSub16.百元買百雞問題:假定小雞每只0.5元,公雞每只2元,母雞每只3元,現(xiàn)有100元錢要求買100只雞,編列所有購雞方案。并算出計(jì)算次數(shù)n(設(shè)能賣小雞x只,公雞y只,母雞z只,則最多能賣公雞50只,母雞33只,小雞(100-y-z)只)兩重循環(huán):PrivateSubButton1_Click()HandlesButton1.Click

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論