




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、Good is good, but better carries it.精益求精,善益求善。VB第5章數(shù)組和自定義類型-第5章數(shù)組和用戶自定義類型一.例題與解析(1)在窗體上畫一個名稱為Command1的命令按鈕,然后編寫如下代碼:OptionBase1PrivateSubCommand1_Click()d=0:c=10 x=Array(10,12,21,32,24)Fori=1To5Ifx(i)cThend=d+x(i)c=x(i)Elsed=d-cEndIfNextiPrintdEndSub程序運行后,單擊命令按鈕,則窗體上的輸出結果為。A)89B)99C)23D)77【答案】C【解析】語
2、句OptionBase1使得數(shù)組的下標從1開始,因此,語句x=Array(10,12,21,32,24)使得數(shù)組x各元素的值分別為:x(1)=10,x(2)=12,x(3)=21,x(4)=32,x(5)=24。當i為1時,x(i)c的值為假,執(zhí)行語句d=d-c,使得d的值為-10;i為2時,x(i)c的值為真,執(zhí)行語句d=d+x(i)和c=x(i),使得d和c的值分別為2和12;i為3時,x(i)c的值為真,執(zhí)行語句d=d+x(i)和c=x(i),使得d和c的值分別為23和21;i為4時,x(i)c的值為真,執(zhí)行語句d=d+x(i)和c=x(i),使得d和c的值分別為55和32;i為5時,x
3、(i)c的值為假,執(zhí)行語句d=d-c,使得d的值為55-32=23。(2)在窗體畫一個名稱為Text1的文本框和一個名稱為Command1的命令按鈕,然后編寫如下事件過程:PrivateSubCommand1_Click()Dimarray1(10,10)AsIntegerDimi,jAsIntegerFori=1To3Forj=2To4array1(i,j)=i+jNextjNextiText1.Text=array1(2,3)+array1(3,4)EndSub程序運行后,單擊命令按鈕,在文本框中顯示的值是。A)12B)13C)14D)15【答案】A【解析】根據(jù)程序,i=1時,j的值分別為
4、2、3、4,則array(1,2)=3,array(1,3)=4,array(1,4)=5;i=2時,j的值分別為2、3、4,則array(2,2)=4,array(2,3)=5,array(2,4)=6;i=3時,j的值分別為2、3、4,則array(3,2)=5,array(3,3)=6,array(3,4)=7。因此文本框內顯示的值應該為12。(3)設有如下程序:PrivateSubCommand1_Click()DimaDimiAsIntegera=Array(1,2,3,4,5,6,7,8,9)Fori=0To3Printa(5-i);NextEndSub程序運行后,單擊命令按鈕,則
5、在窗體上顯示的是。A)4321B)5432C)6543D)7654【答案】C【解析】數(shù)組a初始化后,數(shù)組各元素的值分別是:a(0)=1,a(1)=2,a(2)=3,a(3)=4,a(4)=5,a(5)=6,a(6)=7,a(7)=8,a(8)=9。For循環(huán)內的Print語句在同一行輸出元素a(5)、a(4)、a(3)、a(2)的值,即6、5、4、3。(4)用下面語句定義的數(shù)組的元素個數(shù)是。DimA(-3To5)AsIntegerA)6B)7C)8D)9【答案】D【解析】在聲明數(shù)組的同時指定數(shù)組下標下界(如本例的-3)和下標上界(如本例的5),則數(shù)組A的元素分別是A(-3)、A(-2)、A(-
6、1)、A(0)、A(1)、A(2)、A(3)、A(4)、A(5),共9個元素。(5)設有如下數(shù)組聲明語句,則下列對數(shù)組元素的引用中錯誤的是。DimA(5)A)A(0)=1.57B)A(6)=12C)A(5)=qazD)A(1)=True【答案】B【解析】在聲明數(shù)組時,沒有指定數(shù)組下標下界,系統(tǒng)默認的下界值是0,則數(shù)組A的元素應該是A(0)、A(1)、A(2)、A(3)、A(4)、A(5)。使用A(6)會產生數(shù)組下標越界的錯誤。另外,在本題中聲明數(shù)組A時省略了數(shù)據(jù)類型,則系統(tǒng)默認為Variant類型,即數(shù)組的每個元素可以存放不同類型的數(shù)據(jù)。(6)運行下列程序,單擊窗體,則運行結果是。Option
7、Base1PrivateSubForm_Click()Dima(10)Fori=1To10a(i)=10-i+iMod2NextiFori=10To1Step-2Printa(i);NextiEndSubA)02468B)86420C)13579D)97531【答案】A【解析】本題要注意兩點:第一個For語句的循環(huán)體有一條a(i)=10-i+iMod2語句,完成數(shù)組元素的生成;另外,第二個For語句的參數(shù)是10To1Step-2,逆向間隔輸出。計算數(shù)組元素中Mod運算符優(yōu)先,當i是奇數(shù)時,iMod2的值為1,當i是偶數(shù)時,iMod2的值為0,10-i在循環(huán)中得到987,6,5,4,3,2,1,
8、0,當i是奇數(shù)時加1,因此a數(shù)組中的數(shù)是10,8,8,6,6,4,4,2,2,0,最后逆向間隔輸出,輸出的結果是0,2,4,6,8。(7)運行下列程序,單擊窗體,則運行結果是。OptionBase1PrivateSubForm_Click()Dimaa=Array(1,5,abcde)Fori=1To3Printa(i);NextiEndSubA)15abcdeB)15abcdeC)出錯信息D)15abcde【答案】A【解析】a是變體變量,使用Array函數(shù)進行數(shù)組初始化時,數(shù)組的各個元素類型可以不同;并且字符串輸出是不帶定界符(一對西文雙引號)。(2)設窗體上有一個列表框控件List1,且其
9、中含有若干列表項。則以下能表示當前被選中的列表項內容的是。A)List1.ListB)List1.ListIndexC)List1.IndexD)List1.Text【答案】D【解析】列表框的Text屬性的值是最后一次選中的列表項的文本;ListIndex屬性的值是最后一次選中的列表項的Index值;List屬性和Index屬性均為數(shù)組。因而本題的正確答案是選項D。(3)為了清除列表框中的所有內容,應使用的方法是。A)ClsB)ClearC)RemoveD)RemoveItem【答案】B【解析】Cls和Remove不是列表框的方法;Clear方法用來刪除列表框中的所有項目;RemoveItem
10、方法從列表框刪除指定項目。(15)設置組合框的樣式,可用的屬性是。A)BackStyleB)BorderStyleC)StyleD)Sorted【答案】C【解析】組合框沒有BackStyle和BorderStyle屬性。組合框的Sorted屬性控制列表項是否按序排列,若設置為True按升序排列,否則按加入先后順序排列。組合框的Style屬性控制組合框的樣式,0為下拉式組合框,1為簡單組合框,2為下拉式列表(只能選擇不能輸入)。二練習題1單項選擇題(1)下面程序運行后,單擊窗體,窗體輸出為。OptionBase1PrivateSubForm_Click()x=Array(10,25,15,20,
11、25,25,50,40,50,60)p=x(1)Fori=2To10Ifx(i)pThenp=x(i)s=s+pEndIfNextiPrintp;sEndSubA)1010B)6070C)60135D)1065(2)在窗體上放一個命令按鈕,并編寫如下程序,運行后單擊命令按鈕,則輸出結果是。PrivateSubCommand1_Click()DimAA=Array(1,2,3,4)S=0ForI=1To2S=S+A(I)PrintS;NextIEndSubA)25B)13C)5D)4(3)在窗體上畫一個名稱為Command1的命令按鈕,然后編寫如下程序:PrivateSubCommand1_Cl
12、ick()Dimi,jAsIntegerDima(10,10)AsIntegerFori=1To3Forj=1To3a(i,j)=(i-1)*3+jPrinta(i,j);NextjPrintNextiEndSub程序運行后,單擊命令按鈕,窗體上顯示的是。A)123B)234C)147D)123246345258456369456369789(4)設有如下程序PrivateSubForm_Click()Dimabc()AsIntegern1=Int(10*Rnd()n2=Int(10*Rnd()+50)ReDimabc(n1Ton2)PrintLBound(abc);UBound(abc)En
13、dSub運行程序后,多次單擊窗體,則輸出結果范圍最大的兩個數(shù)是A)1060B)1059C)059D)060(5)下面四個選項中,正確的用戶定義類型是。A)DecabcB)DecabcxmAsStringxmAsString*4nlAsIntegernlAsIntegerxbAsBooleanxbAsBooleanEndDecEndDecC)TypeabcD)TypeabcxmAsStringxmAsString*4nlAsIntegernlAsIntegerxbAsBooleanxbAsBooleanEndTypeEndType(6)設有如下程序OptionBase1PrivateSubFor
14、m_Click()a=Array(張,劉,郝,陳,王)w=a(1)Fori=1To4a(i)=a(i+1)Nextia(5)=wFori=5To1Step-1Printa(i);NextiEndSub運行程序后,輸出結果是。A)張王陳郝劉B)王陳郝劉張C)張劉郝陳王D)劉郝陳王張(7)有如下程序OptionBase1Dima()AsIntegerPrivateSubCommand1_Click()n=Val(InputBox(請輸入數(shù)組的下界:)ReDima(n)s=0Forj=1Tona(j)=2*js=s+a(j)Nextjav=s/nForj=1TonIfa(j)avThenlag=la
15、g+1Elsesma=sma+1EndIfNextjPrintn;個數(shù)的平均值是;av;Print大于平均值的個數(shù)是;lag;小于平均值的個數(shù)是;smaEndSub運行程序后,當用戶在輸入對話框中輸入3,按“確定”按鈕后,輸出結果是A)3個數(shù)的平均值是4大于平均值的個數(shù)是1小于平均值的個數(shù)是2B)3個數(shù)的平均值是5大于平均值的個數(shù)是1小于平均值的個數(shù)是2C)3個數(shù)的平均值是4大于平均值的個數(shù)是2小于平均值的個數(shù)是1D)3個數(shù)的平均值是5大于平均值的個數(shù)是2小于平均值的個數(shù)是1(8)有如下程序PrivateSubForm_Click()DimA(10)AsIntegerForJ=6To10A(J
16、)=InputBox(請按順序輸入1,2,3,4,5)NextJPrintA(0)+A(A(6)/A(10)EndSub運行時順序輸入1,2,3,4,5,輸出的結果是A)0.2B)1.6C)0D)出錯信息(9)在窗體上有一個命令按鈕,然后編寫如下事件過程。PrivateSubCommand1_Click()Dima(5)AsStringFORi=1To5a(i)=Chr(Asc(A)+(i-1)NextForEachbInaPrintb;NextEndSub程序運行后,單擊命令按鈕,輸出結果是A)ABCDEB)12345C)abcdeD)出錯信息(10)窗體上有一個名為List1的列表框,運行
17、程序后,若單擊窗體,在列表框中順序添加天津,北京,上海,南京,廣州,深圳列表項,下面四組程序中,不能完成任務的是。A)OptionBase1PrivateSubForm_Click()a=Array(天津,北京,上海,南京,廣州,深圳)Fori=1To6List1.AddItema(i)NextiEndSubB)OptionBase1PrivateSubForm_Click()a=Array(天津,北京,上海,南京,廣州,深圳)Fori=6To1Step-1List1.AddItema(7-i)NextiEndSubC)OptionBase1PrivateSubForm_Click()a=Ar
18、ray(天津,北京,上海,南京,廣州,深圳)Fori=6To1Step-1List1(i)=a(i)NextiEndSubD)PrivateSubForm_Click()List1.AddItem天津List1.AddItem北京List1.AddItem上海List1.AddItem南京List1.AddItem廣州List1.AddItem深圳EndSub(11)下列程序運行時輸出的結果是OptionBase1PrivateSubForm_Click()Dimx(10)AsInteger,y(5)AsIntegerFori=1to10 x(i)=10-i+1NextFori=1to5y(i
19、)=x(2*i-1)+x(2*i)NextFori=1to5Printy(i);NextEndSubA)37114519B)19151173C)13579D)不確定的值(12)閱讀程序:OptionBase1Dimarr()AsIntegerPrivateSubForm_Click()DimiAsInteger,jAsIntegerReDimarr(3,2)Fori=1To3Forj=1To2arr(i,j)=i*2+jNextNextReDimPreservearr(3,4)Forj=3To4arr(3,j)=j+9NextPrintarr(3,2)+arr(3,4)EndSub程序運行后,
20、單擊窗體,輸出結果為A)21B)13C)8D)25(13)以下語句中可以選擇指定的列表項或取消已選擇的列表項的是。A)列表框.Selected(索引值)B)列表框.Selected(索引值)=True|FalseC)列表框.SelectedD)列表框.Selected=True|False(14)下列語句中,獲得列表框List1中列表項個數(shù)的語句是。A)x=List1.ListCountB)x=ListCountC)x=List1.ListIndexD)x=ListIndex一、單項選擇題答案CADCDAACACBABACCCCAABBCDBBBD二、填空題答案Type2空1:fn*k*(k+
21、1)或fn*(i*2)*(i*2+1)空2:-fx*x2空1:9空2:jmod3=0list1.textItemAItemCItemErnd*100空1:rnd*99+1空2:a(i)mod5=0(15)為了在列表框中使用Ctrl和Shift鍵進行多個列表項的選擇,應將列表框的Multiselect屬性設置為A)0B)1C)2D)3(16)能夠存放組合框的所有項目內容的屬性是A)CaptionB)TextC)ListD)Selected(17)在列表框中當前被選中的列表項的序號是由屬性返回的。A)ColumnsB)ListC)ListIndexD)ListCount(18)列表框的AddIte
22、m方法的作用是。A)清除列表框中的全部內容B)重新設置列表框控件外觀C)向列表框添加項目D)顯示列表框中的列表項目數(shù)(19)從列表框中刪除一個項目使用方法。A)RemoveItemB)AddItemC)ClearD)Move(20)組合框可以看成是和文本框的組合。A)列表框B)命令按鈕C)復選框D)單選按鈕(21)在窗體上畫一個列表框和一個命令按鈕,其名稱分別為List1和Command1,然后編寫如下事件過程。PrivateSubForm_load()List1.AddItemItern1List1.AddItemItern2List1.AddItemItern3EndSubPrivateS
23、ubCommand1_Click()List1.List(List1.Listcount)=AAAAEndSub程序運行后,單擊命令按鈕,其結果為A)把字符串AAAA添加到列表框中,但位置不能確定B)把字符串AAAA添加到列表框的最后(即Item3的后面)C)把列表框中原有的最后一項改為AAAAD)把字符串AAAA插入到列表框的最前面(即Item1的前面)(22)在窗體上添加一命令按鈕,其名為Command1,然后編寫代碼如下。privateSubCommand1_Click()Dimarr(5)AsInteger,arr1(5)AsIntegern=3Fori=1To5arr(i)=iarr
24、1(n)=2*n+iNextPrintarr1(n);arr(n)EndSub程序運行后,單擊命令按鈕其結果為A)311B)113C)133D)313(23)設置組合框的風格,可用的屬性是A)BackstyleB)BorderstyleC)StyleD)Sorted(24)設有數(shù)組定義語句:Dima(5)AsInteger,List1為列表框控件。下列給數(shù)組元素賦值的語句錯誤的是A)a(3)=3B)a(3)=InputBox(inputdata)C)a(3)=List1.ListIndexD)a=Array(1,2,3,4,5,6)(25)在窗體上添加一命令按鈕,名稱為Command1,然后為
25、該命令按鈕編寫如下事件過程,程序運行后,單擊命令按鈕,其結果為OptionBase1PrivateSubCommand1_Click()DimaAsVarianta=Array(1,2,3,4)j=1Fori=4To1Step-1s=s+a(i)*jj=j*10NextPrintsEndSubA)4321B)1234C)34D)12(26)下面程序運行后,輸出的結果是Dimarr(3,3)Forj=1To3Fork=1To3Arr(j,k)=(j-1)*3+kNextkNextjForj=2To3Fork=2To3Printarr(k,j);NextkPrintNextjA)25B)58C)4
26、7D)5936695868(27)程序運行后,單擊命令按鈕,在窗體上顯示的內容是OptionBase0PrivateSubCommand3_Click()Dimdd=Array(a,b,c,d)Printd(1);d(3)EndSubA)abB)bdC)acD)出錯(28)窗體上有一個名稱為Text1的文本框,一個名稱為Command1的命令按鈕。編寫如下的代碼:PrivateTypexaAsIntegerbAsIntegerEndTypePrivateSubCommand1_ClickDimyAsxy.a=inputBox()Ify.a2=y.a/2Theny.b=y.a*y.aElsey.
27、b=Fix(y.a/2)EndIfText1.Text=y.bEndSub對以上程序,下列敘述中錯誤的是A)x是用戶定義的類型B)InputBox函數(shù)彈出的對話框中沒有提示信息C)若輸入的是偶數(shù),y.b的值為該偶數(shù)的平方D)Fix(y.a/2)把y.a/2的小數(shù)部分四舍五入,轉換為整數(shù)返回2填空題(1)用戶可以用語句定義自己的數(shù)據(jù)類型。(2)組合框的Style屬性決定了它的3種不同類型,其中使得組合框只能選擇而不能輸入數(shù)據(jù)的Style值為。(3)下列程序的功能是求sin(0.3125)的值。由臺勞級數(shù)可知:sinx=x-x3/3!+x5/5!-x7/7!+用有限步取代sinx的無限步計算,請?zhí)羁?。(注意:不得增行或刪行,也不得更改程序的結構!)PrivateSubForm_Click()k=2:n=80 x=0.3125sin1=0fn=1:fx=xFori=1Tonsin1=sin1+fx/fnfn=fx=k=k+2NextiPrintsin1EndSub(4)下列程序的功能是:計算并輸出100以內的所有能被3整除且個位數(shù)是6的所有整數(shù),請?zhí)羁铡#ㄗ⒁猓翰坏迷鲂谢騽h行,也不得更改程序的結構?。㏄rivateSubForm_Click()DimiAs
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度個人股權退股協(xié)議-農業(yè)科技項目退出合同
- 二零二五年度農民工勞動權益保障與技能培訓合同
- 2025年度綠色建筑設計與施工項目經理聘用合同
- 二零二五年度沈陽企業(yè)總經理聘用合同職責明確與權益維護
- 土建勞務施工安全防護與應急處理協(xié)議(2025年度)
- 二零二五年度智慧城市建設股東入股合同
- 二零二五年度全款購置體育場館房產協(xié)議
- 二零二五年度花卉養(yǎng)護與植物景觀設計合作合同
- 二零二五年度山林土地承包經營權租賃合同書
- 二零二五年度醫(yī)療衛(wèi)生機構勞動者勞動用工合同
- 新課程標準2022版綜合實踐
- 40篇英語短文搞定高考3500個單詞
- 【企業(yè)會計信息化存在的問題及解決對策開題報告】
- 痘痘肌膚的各種類型
- 衛(wèi)生事業(yè)管理 第十八章 衛(wèi)生應急管理
- 皮膚性病學 14皮炎和濕疹
- GB/T 3403.2-2013塑料粉狀脲-甲醛和脲/三聚氰胺-甲醛模塑料(UF-和UF/MF-PMCs)第2部分:試樣制備和性能測定
- GB/T 21835-2008焊接鋼管尺寸及單位長度重量
- 知識管理控制程序
- 積極情緒的力量
- DSP原理及應用教程-第二章 DSP芯片結構和CPU外圍電路
評論
0/150
提交評論