VB習題基本的控制結(jié)構(gòu)_第1頁
VB習題基本的控制結(jié)構(gòu)_第2頁
VB習題基本的控制結(jié)構(gòu)_第3頁
VB習題基本的控制結(jié)構(gòu)_第4頁
VB習題基本的控制結(jié)構(gòu)_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第四章基本的控制結(jié)構(gòu)習題、選擇題1. 下面正確的賦值語句是(c)。(A)x+y=30(B)y=/r*r(C)y=x+30(D)3y=x2 .為了給x,y,z三個變量賦初值1,下面正確的賦值語句是(a)。(A)x=1:y=1:z=1(B)x=1,y=1,z=1(C)x=y=z=1(D)xyz=13 .賦值語句:a=123+Mid(123456”,3,2)執(zhí)行后,a變量中的值是(157)。4 .賦值語句:a=123&Mid(123456”,3,2)執(zhí)行后,a變量中的值是(”12334”)。5 .InputBox函數(shù)返回值的類型為(字符串)。6 .在窗體上畫一個命令按鈕,然后編寫如下事件過程:Pri

2、vateSubCommand1_Click()a=InputBox(請輸入第一個數(shù)”)b=InputBox(請輸入第二個數(shù)”)Printb+aEndSob程序運行后,單擊命令按鈕,先后在兩個輸入框中分別輸入456和123,則輸出結(jié)果是(123546)。7 .在窗體上畫一個命令按鈕,然后編寫如下事件過程:PrivateSubCommand1_Click()Dimaasinteger,basintegera=InputBox(請輸入第一個數(shù)”)b=InputBox(請輸入第二個數(shù)”)Printb+aEndSob程序運行后,單擊命令按鈕,先后在兩個輸入框中分別輸入456和123,則輸出結(jié)果是(579

3、)。8.設(shè)a=10,b=20,則不能實現(xiàn)變量a,b交換的是(aA) c:=a:b:=a:a:=cB) c:=a:a:=b:b:=cC)c:=b:b:=a:a:=cD)c:=a:d:=b:b:=c:a:=d9.VB提供了結(jié)構(gòu)化程序設(shè)計的三種基本結(jié)構(gòu)是選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、順序結(jié)構(gòu)11 .設(shè)x為未賦值的整型變量,語句ifxthenPrintxelseprintx+1執(zhí)行后的結(jié)果是(1)12 .語句ifx=1theny=1,下列說法正確的是(c)。(A)x=1和y=1均為賦值語句(B)x=1和y=1均為關(guān)系表達式( C) x=1為關(guān)系表達式,y=1為賦值語句( D) x=1為賦值語句,y=1為關(guān)系表達

4、式b)不正確。(B)ifxythenmax=xelsemax=y(D)ify=xthenmax=ymax=x13. 下面程序段求兩個數(shù)中的大數(shù),( A)max=iif(xy,x,y)( C)max=xify=xthenmax=yLoop循環(huán)結(jié)構(gòu)中,正確的描述是(b14. 在DoUntil條件(A)如果“條件”是一個為0的常數(shù),則一次循環(huán)體也不執(zhí)行(B)如果“條件”是一個為0的常數(shù),則至少執(zhí)行一次循環(huán)體(C)如果“條件”是一個不為0的常數(shù),則至少執(zhí)行一次循環(huán)體(D)不論“條件”是否為“真”,至少要執(zhí)行一次循環(huán)體15.設(shè)a=6,則執(zhí)行x=IIf(a5,-1,0)后,x的值為(-1分析程序的運行結(jié)果

5、1 .閱讀程序段:x=1y=4dountily4x=x*yy=y+1loopprintx執(zhí)行此段程序后的結(jié)果是:42 .閱讀程序段:fori=1to3forj=1toifork=jto3a=a+1nextknextjnextiprinta執(zhí)行此段程序后的結(jié)果是:143.在窗體上畫一個命令按鈕,然后編寫如下事件過程:PrivateSubCommand1_click()Fori=1to4X=4Forj=1to3X=3Fork=1to2X=x+6NextkNextjNextiPrintxEndsub程序運行后,單擊命令按鈕,輸出結(jié)果是:154. 在窗體上畫一個命令按鈕,然后編寫如下事件過程:Priv

6、ateSubCommand1_click()X=0Dountilx=-1a=Val(InputBox(請輸入a的值”)b=Val(InputBox(請輸入b的值”)X=Val(InputBox(請輸入X的值”)a=a+b+xLoopPrintaEndSub程序運行后,單擊命令按鈕,依次在輸入對話框中輸入5、4、3、2、1、-1,則輸出結(jié)果是:25. 在窗體上畫一個文本框text1,然后編寫如下事件過程:PrivateSubForm_Load()Text1.text=”TFori=1to10Sum=Sum+iNextiText1.text=sumEndsub程序運行后,在文本框中顯示的結(jié)果是:5

7、57. 閱讀程序:PrivateSubForm_click()Dimk%,n%,m%n=10m=1k=1Dowhilek=nm=m*2k=k+1LoopPrintmEndsub程序運行后,單擊窗體,輸出結(jié)果為:10246. 在窗體上畫兩個文本框text1、text2和一個命令按鈕commandl,然后編寫如下事件過程:Privatesubcommand1_click()X=0Dowhilex50X=(x+2)*(x+3)N=n+1LoopText1.text=str(n)Text2.text=str(x)Endsub程序運行后,單擊命令按鈕,在兩個文本框中顯示的值分別是:2728. 閱讀程序:

8、PrivateSubForm_click()A=0Fori=1to2Forj=1to4Ifjmod20thena=a+1Endifa=a+1NextjNextiPrintaEndsub程序運行后,單擊窗體,輸出結(jié)果為:9. 閱讀程序:Privatesubform_click()S$=InputBox(“輸入一個數(shù)據(jù)串”)Fori=1toLen(s)IfMid(s,i,1)=”;”thenk=k+1NextiIfright(s,1)”;”thenk=k+1PrintkEndsub運行程序時,從鍵盤輸入數(shù)據(jù)串“56;76;4;22;45;65;87”,輸出的結(jié)果是:711.閱讀程序:Private

9、subcommand1_click()X=7Fori=1to4K=val(inputbox(“pleaseinput:”)Ifkmod5=0thenY=y+kX=kElseY=y+xEndifPrintyNextiEndsub程序運行時,從鍵盤輸入2、5、7、10,輸出的結(jié)果為:313. 閱讀程序:privatesubcommand1_click()dimcrasstring*2cr=chr(13)+chr(10)回車換行字符串fori=1to5forj=Ito5s=s&space(1)&“*”nextjs=s&crnextiprintsendsub程序運行時,結(jié)果為:10. 在窗體上一個命令

10、按鈕commandl,然后編寫如下事件過程:privateSubcommand1_click()dimxasinteger,nasintegerx=1:n=0dowhilex=”a”andt=”A”andt=”0”andtathenx=b*(b+a)printxendsub程序運行時,從鍵盤輸入5、4,輸出的結(jié)果為:17. 閱讀程序:privatesubcommand1_click()a$=”123456789”b$=”ABCDEFGHIJ”text1=”fori=1to5s$=mid(a$,9-i,1)+mid(b$,i,1)text1=text1+s$nextiendsub程序運行后,文本

11、框text1中的內(nèi)容是:8a7b*6c5d4e16. 閱讀程序:privatesubcommand1_click()s$=”*123456abcdef*54*#eee”doi=i+2loopuntilmid(s,I,1)=”*”printI,left(s,i)endsub程序運行時,輸出的結(jié)果為:14*123456abcdef*18. 閱讀程序:privatesubcommand1_click()a$=”123456789”b$=”ABCDEFGHIJ”text1=”fori=1to5s$=mid(a$,9-i,2)+mid(b$,i,1)text1=s$+text1nextiendsub程序

12、運行后,文本框text1中的內(nèi)容是:45e56d67c78b89a(包括運行時產(chǎn)生的錯誤)(2)c=3+sqr(-3)(4)x=sin(x)/(20mod2)19. 閱讀程序:privatesubcommand1_click()a$=”0123456789”c=6d=5dowhiled0d=val(mid(a,10-i,1)i=i+1ifdcthenc=c+1loopprintc+dendsub程序運行后,輸出的結(jié)果為:8二、簡答題1.指出下列賦值語句中的錯誤(包括運行時產(chǎn)生的錯誤)(1)10x=sin(x)+y(3)c+x+y=c*y20.在窗體上畫一個名稱為Command1的命令按鈕,一個

13、名稱為Label1的標簽,然后編寫如下事件過程:PrivateSubCommand1_Click()s=0Fori=1To15x=2*i-1IfxMod3=0Thens=s+1NextiLabel1.Caption=sEndSub程序運行后,單擊命令按鈕,則標簽中顯示的內(nèi)容是52 .Msgbox作為函數(shù)使用時與Inputbox的區(qū)別?各自獲得的是什么值?3 .語句:IF表達式Then中的表達式可以是算術(shù)、字符、關(guān)系、邏輯表達式中的哪些?4 .指出下列語句中的錯誤。(1) IfxyThenprintx(2) If10x=Aandc=aandc20y3x2當10WxW20當x10(3)利用If語句

14、和IIf函數(shù)兩種方法求三個數(shù)x、v、z中的最大值,并將其放入Max變量中。(4)I=-3To20step06 .計算下列循環(huán)語句的次數(shù):(3) I=-3.5To5.5step-0.57 .下列3090為語句標號,分別標記該語句,第40句共執(zhí)行了幾次?第50句共執(zhí)行了幾次?第90句語句顯示的結(jié)果是多少?30forj=1to12step340fork=6to2step-250mk=k60printj,k70nextk80nextj90printj,k,mk8. 如果事先不知道循環(huán)次數(shù),如何用ForNext結(jié)構(gòu)來實現(xiàn)?9. 利用循環(huán)結(jié)構(gòu),實現(xiàn)如下功能:10( 1)s(i1)(2i1)i1(2)分別統(tǒng)

15、計1100中,滿足3的倍數(shù)、7的倍數(shù)的數(shù)各為多少個?( 3)將輸入的字符串以反序顯示。例如,輸入”ASDFGHJKL”,顯示”LKJHGFDSA”。10. 下面程序運行后的結(jié)果是什么?該程序的功能是什么?(1)PrivateCommand1_Click()Dimx$,n%n=20力力x=”DoWhilen0n=nmod2n=n2x=chr(48+a)&xLoopPrintxEndSubSub(2)PrivateSubCommand1_Click()Dimx%,y%,z%x=242y=44z=x*yDoUntilx=yIfxyThenx=x-yelsey=y-xLoopPrintx,z/xEnd

16、Sub11. 利用隨機函數(shù)產(chǎn)生20個50100范圍內(nèi)的隨機數(shù),顯示它們的最大值、最小值和平均值。四、將下列程序補充完整1 .輸入任意長度的字符用,要求將字符順序倒置,例如,將輸入的“ABCDEFG”變換成“GFEDCBA”。Privatesubcommand1_click()Dima$,i%,c$,d$a=inputbox$(輸入字符串:”)n=(len(a)fori=tostep-1c=mid(a,i,1)d=(c)printdnextiendsub2 .找出被3、5、7除,余數(shù)為1的最小的5個正整數(shù)。Privatesubcommand1_click()Dimcount%,n%count=0

17、n=1don=n+1if()thenprintncount=count+1endifloop()endsub3.習題君賽,有七P123打分,如下程序?qū)σ幻麉①愓?,輸入七個評車的區(qū)分蒙,4.掉友最6.分、7.8一個最低分,求出平均分為該參賽4.以下程序的功能是:生成20個200到300之間的隨機整數(shù),輸出其中能被5整除者寥考答案:Privatesubcommandlclick()卜VB6R中,警那下界取認為Dimmark!,aver!,啖max!,min!Ave用i0nBase語句,如:OptionBase0,的數(shù)并求出它們的和。PrivateSubCommand1_Click()用什么語句可以

18、重*#勰默認下界?S=0Fori=1to7Fori=1To202:Mark=nputbo或嗡取端數(shù),7列數(shù)組聲明(下界若去楓植肥00+200利曲委的打分”)If(xmod5)=0Then(1Ifin=thenPrintxDMaxiTm驟s1ntegerS=(s+x)DMira戳)EndifElse1NextiReD1mm(nkminlthenPrintSum=”;SDim(a%2,3)EndSub(4)Dima(1,1,2)AsIntegerelselfmarkmaxTthenDima%(10)ReDima(1To12)(6)Dima!()ReDima(3,2)AsIntegerDima%(2

19、,3)(8) Dima(1To3,1To4)AsInteger答:(2),(4),,(8)符合要求。(1)靜態(tài)數(shù)組在聲明數(shù)組時的下標必須是常數(shù),不能出現(xiàn)變量(3)不能使用方括號(5)已聲明了的靜態(tài)數(shù)組,不能再用重定義語句來重定義靜態(tài)數(shù)組的大小(6)可以反復(fù)地改變數(shù)組的元素以及維數(shù)的數(shù)目,但是不能將一個數(shù)組定義為某種數(shù)據(jù)類型之后,再使用ReDim將該數(shù)組改為其他數(shù)據(jù)類型。3 .程序運行時顯示“下標越界”可能產(chǎn)生的錯誤有哪幾種情況?答:引用了不存在的數(shù)組元素.下標比可能下標范圍大或小,或是在應(yīng)用程序中這一邊的數(shù)組沒有指定范圍。檢查數(shù)組的聲明以確認其上界和下界。若使用的是重新指定范圍的數(shù)組,應(yīng)使用U

20、Bound和LBound函數(shù)來決定數(shù)組訪問。如果索引指定為變量,應(yīng)檢查變量名的拼寫。聲明數(shù)組時沒有指定元素的數(shù)目例如:Dima%()a(8)=5VisualBasic并不會將沒有指定范圍的數(shù)組自動設(shè)為0-8,相反必須使用Dim或ReDim來指定數(shù)組中元素的數(shù)目。4 .已知下面的數(shù)組聲明,寫出它的數(shù)組名、數(shù)組類型、維數(shù)、各維的上下界、數(shù)組的大小、并按行的順序列出各元素。Dima(-1To2,3)AsSingle答:數(shù)組名為a、數(shù)組類型為單精度、二維、各維的下界分別為-1和0、上界分別為2和3、數(shù)組的大小4x4共16個元素,各元素排列順序見表:a(-1,0)a(-1,1)a(-1,2)a(-1,3)a(0,0)a(0,1)a(0,2)a(0,3)a(1,0)a(1,1,)a(1,2)a(1,3)a(2,0)a(2,1)a(2,2,)a(2,3)5.利用隨機數(shù)生成兩個矩陣(數(shù)據(jù)不名相凡前者3070范圍、101135)。3567525010311512510133476639133127132135AB4756664111110313411830695538123109113130要求:(1)將兩個矩陣相加結(jié)果放入C矩陣中。(2)將A矩陣轉(zhuǎn)置。(3)統(tǒng)計C矩陣中最大值和下標。(4)以下三角形式顯示A矩陣、上三角形式顯示B矩陣。(5)將A矩陣的第一行與第三行對應(yīng)元素交換位置,即第

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論