國家二級VB機試(選擇題)模擬試卷7(共340題)_第1頁
國家二級VB機試(選擇題)模擬試卷7(共340題)_第2頁
國家二級VB機試(選擇題)模擬試卷7(共340題)_第3頁
國家二級VB機試(選擇題)模擬試卷7(共340題)_第4頁
國家二級VB機試(選擇題)模擬試卷7(共340題)_第5頁
已閱讀5頁,還剩103頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

國家二級VB機試(選擇題)模擬試卷7(共9套)(共340題)國家二級VB機試(選擇題)模擬試卷第1套一、選擇題(本題共40題,每題1.0分,共40分。)1、下列鏈表中,其邏輯結(jié)構(gòu)屬于非線性結(jié)構(gòu)的是A、二叉鏈表B、循環(huán)鏈表C、雙向鏈表D、帶鏈的棧標準答案:A知識點解析:在定義的鏈表中,若只含有一個指針域來存放下一個元素地址,稱這樣的鏈表為單鏈表或線性鏈表。帶鏈的??梢杂脕硎占嬎銠C存儲空間中所有空閑的存儲結(jié)點,是線性表。在單鏈表中的結(jié)點中增加一個指針域指向它的直接前件,這樣的鏈表,就稱為雙向鏈表(一個結(jié)點中含有兩個指針),也是線性鏈表。循環(huán)鏈表具有單鏈表的特征,但又不需要增加額外的存貯空間,僅對表的鏈接方式稍做改變,使得對表的處理更加方便靈活,屬于線性鏈表。二叉鏈表是二叉樹的物理實現(xiàn),是一種存儲結(jié)構(gòu),不屬于線性結(jié)構(gòu)。答案為A選項。2、設循環(huán)隊列的存儲空間為Q(1:35),初始狀態(tài)為front=rear=35?,F(xiàn)經(jīng)過一系列入隊與退隊運算后,front=15,rear=15,則循環(huán)隊列中的元素個數(shù)為A、15B、16C、20D、0或35標準答案:D知識點解析:在循環(huán)隊列中,用隊尾指針rear指向隊列中的隊尾元素,用排頭指針front指向排頭元素的前一個位置。在循環(huán)隊列中進行出隊、入隊操作時,頭尾指針仍要加1,朝前移動。只不過當頭尾指針指向向量上界時,其加1操作的結(jié)果是指向向量的下界0。由于入隊時尾指針向前追趕頭指針,出隊時頭指針向前追趕尾指針,故隊空和隊滿時,頭尾指針均相等。答案為D選項。3、下列關(guān)于棧的敘述中,正確的是A、棧底元素一定是最后入棧的元素B、棧頂元素一定是最先入棧的元素C、棧操作遵循先進后出的原則D、以上說法均錯誤標準答案:C知識點解析:棧頂元素總是后被插入的元素,從而也是最先被刪除的元素;棧底元素總是最先被插入的元素,從而也是最后才能被刪除的元素。棧的修改是按后進先出的原則進行的。因此,棧稱為先進后出表,或"后進先出"表,所以選擇C。4、在關(guān)系數(shù)據(jù)庫中,用來表示實體間聯(lián)系的是A、屬性B、二維表C、網(wǎng)狀結(jié)構(gòu)D、樹狀結(jié)構(gòu)標準答案:B知識點解析:關(guān)系模型實體間的聯(lián)系采用二維表來表示,簡稱表。選項C為網(wǎng)狀模型實體間的聯(lián)系,選項D為層次模型實體間的聯(lián)系,選項A屬性刻畫了實體5、公司中有多個部門和多名職員,每個職員只能屬于一個部門,一個部門可以有多名職員。則實體部門和職員間的聯(lián)系是A、1:1聯(lián)系B、m:1聯(lián)系C、1:m聯(lián)系D、m:n聯(lián)系標準答案:C知識點解析:兩個實體集間的聯(lián)系實際上是實體集間的函數(shù)關(guān)系,主要有一對一聯(lián)系(1:1)、一對多聯(lián)系(1:m)、多對一聯(lián)系(m:1)、多對多聯(lián)系(m:n)。對于每一個實體部門,都有多名職員,則其對應的聯(lián)系為一對多聯(lián)系(1:m),答案選C。6、A、數(shù)據(jù)流圖(DFD圖)B、投影C、自然連接D、并標準答案:A知識點解析:由關(guān)系R到關(guān)系S為一元運算,排除C和D。關(guān)系S是關(guān)系R的一部分,是通過選擇之后的結(jié)果,因此選A。7、數(shù)據(jù)字典(DD)所定義的對象都包含于A、所定義的對象都包含于B、程序流程圖C、軟件結(jié)構(gòu)圖D、方框圖標準答案:A知識點解析:在數(shù)據(jù)流圖中,對所有元素都進行了命名,所有名字的定義集中起來就構(gòu)成了數(shù)據(jù)字典。因此選A,而B,C,D都不符合。8、軟件需求規(guī)格說明書的作用不包括A、軟件驗收的依據(jù)B、用戶與開發(fā)人員對軟件要做什么的共同理解C、軟件設計的依據(jù)D、軟件可行性研究的依據(jù)標準答案:D知識點解析:軟件需求規(guī)格說明書是需求分析階段的最后成果,是軟件開發(fā)的重要文檔之一。軟件需求規(guī)格說明書有以下幾個方面的作用。①便于用戶、開發(fā)人員進行理解和交流,B正確;②反映出用戶問題的結(jié)構(gòu),可以作為軟件開發(fā)工作的基礎和依據(jù),C正確;③作為確認測試和驗收的依據(jù),A正確。9、下面屬于黑盒測試方法的是A、語句覆蓋B、邏輯覆蓋C、邊界值分析D、路徑覆蓋標準答案:C知識點解析:黑盒測試不關(guān)心程序內(nèi)部的邏輯,只是根據(jù)程序的功能說明來設計測試用例。在使用黑盒測試法時,手頭只需要有程序功能說明就可以了。黑盒測試法分等價類劃分法、邊界值分析法和錯誤推測法,答案為C。而A、B、D均為白盒測試方法。10、下面不屬于軟件設計階段任務的是A、軟件總體設計B、算法設計C、制定軟件確認測試計劃D、數(shù)據(jù)庫設計標準答案:C知識點解析:從技術(shù)觀點上看,軟件設計包括軟件結(jié)構(gòu)設計、數(shù)據(jù)設計、接口設計、過程設計。所以A、B、D正確,C為軟件測試階段的任務。11、以下合法的VB變量名是A、_aB、yPrintC、a-bD、Type標準答案:B知識點解析:變量的命名規(guī)則是:①必須以字母開頭,由字母、漢字、數(shù)字或下劃線組成;②不能在變量名中出現(xiàn)句點"."、空格或者嵌入字符,例如!、@、#、$、%、&等;③長度不得超過255個字符;④不能使用VB的關(guān)鍵字,關(guān)鍵字是語言的組成部分,包括預定義語句(例如If、For等)、函數(shù)(Abs、Sqr等)和操作符(Or、Mod等)。12、以下關(guān)于VB特點的敘述中,錯誤的是A、VB采用事件驅(qū)動的編程機制B、VB程序能夠以解釋方式運行C、VB程序能夠以編譯方式運行D、VB程序總是從Form_Load事件過程開始執(zhí)行標準答案:D知識點解析:在一般情況下,整個應用程序從設計時的第一個窗體開始執(zhí)行,需要首先執(zhí)行的程序代碼放在Form_Load事件過程中。如果需要從其他窗體開始執(zhí)行應用程序,則可通過"工程"菜單中的"工程屬性"命令("通用"選項卡)指定啟動窗體。但是,如果有SubMain過程,則可以(注意,是"可以",而不是"必須")首先執(zhí)行SubMain過程。13、有如下數(shù)據(jù)定義語句:Dima,bAsIntegerDimx%,yasInteger執(zhí)行上述語句后,不是整型變量的是A、aB、bC、xD、y標準答案:A知識點解析:在VisualBasic中,變量的定義格式有兩種,第一種是:Declare變量名As類型,"Declare"可以是Dim,Static,Redim,Public或Private,"As"是關(guān)鍵字,"類型"可以是基本的數(shù)據(jù)類型也可以是用戶自定義的類型;第二種是用類型說明符來定義變量,即在定義變量名后面加上類型說明符;如果變量名后面沒有類型說明符,又不是第一種定義方式的話,則定義的變量是變體變量。14、以下關(guān)于數(shù)組的敘述中,錯誤的是A、Variant類型的數(shù)組中各數(shù)組元素的類型可以不同B、各數(shù)組元素可以是不同類型的控件C、各數(shù)組元素通過下標進行區(qū)別D、各數(shù)組元素具有相同的名稱標準答案:B知識點解析:控件數(shù)組是由一組相同類型的控件組成。它們共用一個控件名,絕大部分的屬性也相同,但有一個屬性不同,即Index屬性的值不同。當建立控件數(shù)組時,系統(tǒng)給每個元素賦一個唯一的索引號(Index),通過屬性窗口的Index屬性,可以知道該控件的下標是多少,第1個元素下標是0。15、以下關(guān)于VB文件的敘述中,正確的是A、標準模塊文件的擴展名是.frmB、一個.vbg文件中可以包括多個.vbp文件C、一個.vbp文件只能含有一個標準模塊文件D、類模塊文件的擴展名為.bas標準答案:B知識點解析:標準模塊文件的擴展名是.bas;工程組文件的擴展名是.vbg,由多個工程文件組成;工程文件的擴展名是.vbp,可以含有多個標準模塊文件;類模塊文件的擴展名為.cls。16、以下表達式與Int(3.5)的值相同的是A、CInt(3.5)B、Val(3.5)C、Fix(3.5)D、Abs(3.5)標準答案:C知識點解析:Fix(x)與Int(x)同為取整函數(shù),但有所不同。當x為正時,兩個取整函數(shù)都是刪除x小數(shù)部分,返回其整數(shù)部分的值,不進行四舍五入;當x為負時,Int(x)返回小于或等于x的最大整數(shù),F(xiàn)ix(x)返回大于或等于x的最小整數(shù)。即Fix(x)函數(shù)指的是直接取x的整數(shù)部分,而Int(x)函數(shù)則是不大于x的整數(shù)。x可以是實數(shù)型或貨幣型數(shù)據(jù)。17、設:a=2,b=8,c=6,d=3,表達式a>bAndNot(c>d)Ord>c的值是A、1B、0C、TrueD、False標準答案:D知識點解析:本題中包含的兩種運算的優(yōu)先級別由高到低依次為:比較運算符、邏輯運算符。其中,邏輯運算符的優(yōu)先級為:Not(非)→And(與)→Or(或)。And前面表達式的值為False,And后面表達式的值為False,Or后面表達式的值也為False,所以最后輸出的也是False。因此,答案為D)18、A、y*y>xAnd10<=xB、Sqr(y)>xAndx>=10C、Sqr(y)>xOrx<=10D、y*y>xOrx>=10標準答案:A知識點解析:Sqr(x)是平方根函數(shù),所以選項B)、C)不正確。And、Or是邏輯運算符,And是邏輯與,Or是邏輯或,所以選項D)不正確。由題意,答案為A)。19、設在一個工程的窗體中有如下代碼:PublicxAsIntegerPrivateSubForm_Load()DimyAsIntegerEndSub在該工程的標準模塊的聲明部分有如下代碼:PublicaAsIntegerPrivatebAsInteger關(guān)于上述代碼,以下敘述中錯誤的是A、變量x的作用域是整個工程B、變量y的作用域是Form_Load過程C、變量a的作用域是整個工程D、變量b的作用域是整個標準模塊標準答案:A知識點解析:VB中變量的作用域分為:局部變量:在過程內(nèi)用Dim語句或用Static語句聲明的變量,只能在本過程中使用。窗體/模塊級變量:在"通用聲明"段中用Dim語句或用Private語句聲明的變量,可被本窗體/模塊的任何過程訪問。全局變量:在"通用聲明"段中用Public語句聲明的變量,可被本應用程序的任何過程或函數(shù)訪問。20、以下關(guān)于文件的敘述中,錯誤的是A、順序文件有多種打開文件的方式B、讀取順序文件的記錄時,只能從頭至尾逐記錄進行C、順序文件中各記錄的長度是固定的D、隨機文件一般占用空間比較小標準答案:C知識點解析:順序文件中各記錄的長度不固定。21、以下不屬于VB控件的是A、框架B、點C、直線D、形狀標準答案:B知識點解析:形狀控件(Shape)提供了顯示一些規(guī)則圖形的簡易方法,通過設置形狀控件Shape屬性值,可顯示6種圖形:0-矩形、1-正方形、2-橢圓、3-圓、4-圓角矩形、5-圓角正方形。22、窗體上有一個名稱為Command1的命令按鈕,一個名稱為Text1的文本框,其Text屬性值為"VBProgramming"。運行程序后,選中其中的"VB",并執(zhí)行如下事件過程:PrivateSubCommand1_Click()Text1.SelText="C++"EndSub則文本框中顯示的內(nèi)容為A、VBB、VBProgrammingC、文本框被清空D、C++Programming標準答案:D知識點解析:文本框SelText屬性返回或設置包含當前所選擇文本的字符串;如果沒有字符被選中,則為零長度字符串("")。由題意知,選中"VB",返回"C++",所以結(jié)果為"C++Programming"。23、窗體上有一個名稱為VScroll1的垂直滾動條,為了設定單擊滾動條兩端箭頭時的Value增量值,應設置的屬性是A、LargeChangeB、SmallChangeC、MaxD、Min標準答案:B知識點解析:SmallChange屬性表示當用戶單擊滾動條兩端的箭頭時,Value屬性值的增加或減小的量,默認值為1。24、設窗體名稱為frmTest,為了在程序代碼中將窗體的標題改為"等級考試",其代碼應該是A、frmTest.Caption="等級考試"B、Form1.Caption="等級考試"C、frmTest.Title="等級考試"D、Form1.Title="等級考試"標準答案:A知識點解析:窗體的標題設置方法:窗體名.Caption=新設置的標題名,由題意知,選項A正確。25、要將單選按鈕Opt1設為被選中,應設置的屬性是A、ValueB、SelectedC、EnabledD、SetFocus標準答案:A知識點解析:要將單選按鈕Opt1設為被選中,應設置的屬性是Value。設置單選按鈕在執(zhí)行時的兩種狀態(tài):True:表示選中,運行時該單選按鈕的圓圈中出現(xiàn)一個黑點。False(默認值):表示未選中。26、窗體上有一個名稱為Combo1的組合框,為了引用Combo1中最后一個列表項,應使用的表達式是A、Combo1.List(ListCount)B、Combo1.List(Combo1.ListCount-1)C、Combo1.List(ListCount-1)D、Combo1.List(Combo1.ListCount)標準答案:B知識點解析:組合框中的List屬性用來列出表項的內(nèi)容。該屬性保存了列表框中所有數(shù)組的值,可以通過下標訪問數(shù)組中的值(下標從0開始),其格式為:[組合框.]List(下標),特別注意的是"下標"相當于索引值,指示著表項中某一項表中內(nèi)容的位置,第1項的索引值為0,第2項為1,依次類推,這個參數(shù)非常重要不可省略。組合框中列表項的排列是從0開始,最后一項的索引值應為ListCount-1。27、對于文本框Text1,能夠獲得按鍵的ASCII碼值的事件過程是A、Text1_KeyUpB、Text1_KeyPressC、Text1_ClickD、Text1_Change標準答案:B知識點解析:KeyPress事件:用戶按下并且釋放一個會產(chǎn)生ASCII碼的鍵時被觸發(fā)。此事件只對會產(chǎn)生ACSII碼的按鍵有反應,包括數(shù)字、大小寫的字母、Enter、Backspace、Esc、Tab等,對于如方向鍵這樣的不會產(chǎn)生ASCII碼的按鍵,KeyPress事件就不會被觸發(fā)。28、命令按鈕Command1的MouseUp事件過程結(jié)構(gòu)如下:PrivateSubCommand1_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)……EndSub則以下敘述中錯誤的是A、X、Y參數(shù)表示的是Command1左上角在窗體中的位置B、Button參數(shù)用于確定按下的鼠標鍵C、Shift參數(shù)用于確定是否按下了Alt、Ctrl或Shift鍵D、MouseUp表示抬起鼠標按鍵時觸發(fā)的事件標準答案:A知識點解析:X,Y用來表示鼠標光標當前在窗體上的X、Y軸坐標。29、通用對話框Filter屬性的作用是A、設置對話框的標題B、指定對話框所選擇的文件名C、指定對話框的打開方式D、指定對話框中顯示的文件類型標準答案:D知識點解析:通用對話框(CommonDialog)提供諸如打開文件、保存文件、設置打印選項、選擇顏色和字體、顯示幫助等操作的一組標準對話框,該控件運行時不可見。通用對話框的DialogTitle屬性用于返回或設置該對話框標題欄上所顯示的文本;Action屬性用于設置被打開對話的類型;當通用對話框顯示為"打開"或"另存為"類型時,其FileName屬性用于返回或設置所選文件的路徑和文件名,F(xiàn)ilter(過濾器)屬性用于指定在對話框的文件列表中顯示文件的類型。30、以下關(guān)于菜單的敘述中錯誤的是A、對于同一窗體中的菜單,各菜單項的名稱必須唯一B、對于同一窗體中的菜單,各菜單項的標題必須唯一C、菜單中各菜單項可以是控件數(shù)組元素D、彈出式菜單的編輯、定義在菜單編輯器中進行標準答案:B知識點解析:對于同一窗體中的菜單,各菜單項的標題不須唯一。31、窗體上有一個名稱為Command1的命令按鈕,其單擊事件過程如下:PrivateSubCommand1_Click()Fori=3To1Step-1Sum=0Forj=1ToiSum=Sum+i*jNextNextPrintSumEndSub運行程序時,單擊命令按鈕,則窗體上顯示的是A、1B、6C、18D、25標準答案:A知識點解析:i初值為3,步長為-1,即循環(huán)中i值分別為3,2,1,j的for循環(huán)中,步長為1。注意Sum=0語句。每次執(zhí)行以j為變量的for循環(huán)前Sum被清0。因此Sum只在i=1的循環(huán)有值。選A)。32、以下能夠正常結(jié)束循環(huán)操作的程序段是A、i=5Doi=i+1LoopUntili<0B、i=5Doi=i+2LoopUntili=1C、i=5DoWhilei>0i=i-2LoopD、i=0DoWhilei<1i=i-2標準答案:C知識點解析:A中循環(huán)體內(nèi)i=i+1,i永遠不會小于0;B中i的初值為5,執(zhí)行語句i=i+2后不會等于1。D中i<1一直滿足條件,不能退出循環(huán)。C中i的初值為5,i=i-2則每次都減2,在第3次執(zhí)行循環(huán)后i>0條件不滿足,退出循環(huán)。選C)。33、窗體上有一個名稱為Command1的命令按鈕,并有如下程序代碼:OptionBase1PrivateSubCommand1_Click()Dima(4,4)AsIntegerDimbAsIntegerDimiAsInteger,jAsIntegerFori=1To4Forj=1To4a(i,j)=i+jNextjNextiCallf(a,b)PrintbEndSubPrivateSubf(x()AsInteger,ByRefyAsInteger)y=0Fori=1To4y=y+x(i,i)NextEndSub運行程序,單擊命令按鈕后,窗體上顯示的是A、0B、2C、8D、20標準答案:D知識點解析:Command1_Click()中通過嵌套循環(huán)給數(shù)組a元素賦初值,執(zhí)行完后a(1,1)=2,a(2,2)=4,a(3,3)=6,a(4,4)=8;Callf(a,b)語句調(diào)用子函數(shù)Subf(x()AsInteger,ByRefyAsInteger)。該函數(shù)內(nèi)For循環(huán)把a數(shù)組中一維下標和二維下標相同的元素值相加。值為20,選D)。34、窗體上有一個名稱為Command1的命令按鈕,并有如下程序代碼:OptionBase1PrivateSubCommand1_Click()Dima%(3,3)Fori=1To3Forj=1To3Ifi>1Andj>1Thena(i,j)=a(a(i-1,j-1),a(i,j-1))+1Elsea(i,j)=i*jEndIfNextNextPrinta(2,2);a(3,3)EndSub運行程序,單擊命令按鈕,窗體上顯示的是A、13B、21C、22D、33標準答案:D知識點解析:a是個整形的二維數(shù)組。通過For循環(huán)給數(shù)組a元素賦值。i>1并且j>1時執(zhí)行a(i,j)=a(a(i-1,j-1),a(i,j-1))+1語句,否則執(zhí)行a(i,j)=i*j,因此執(zhí)行完第一個大循環(huán)后,數(shù)組a中的元素值分別是:a(1,1)=1,a(1,2)=2,a(1,3)=3。以此類推,可知a(2,2)=3,a(3,3)=3。選D)。35、窗體上有一個名稱為Command1的命令按鈕,并有如下程序代碼:PrivateSubCommand1_Click()Staticaa=1:b=2:c=3Callf(a,b,c)Printa;b;cEndSubSubf(ByValx,ByRefy,z)x=x+1y=y+1z=z+1EndSub運行程序,單擊命令按鈕,窗體上顯示的是A、133B、134C、233D、234標準答案:B知識點解析:子函數(shù)Subf(ByValx,ByRefy,z)中x值通過值傳遞,y,z是傳引用,子函數(shù)執(zhí)行后b,c值會被加1。而a值維持不變。選B)。36、窗體上有一個名稱為Command1的命令按鈕,單擊該按鈕時所實現(xiàn)的功能是產(chǎn)生10個隨機整數(shù),然后從鍵盤輸入一個整數(shù),查找該數(shù)在數(shù)組中的位置。若找到,輸出該數(shù)的位置;若沒有找到,給出相應的提示。該命令按鈕的單擊事件過程如下:PrivateSubCommand1_Click()Dima(10)AsIntegerDimxAsIntegerFori=1To10a(i)=Int(Rnd*100)Nextx=InputBox("輸入100以內(nèi)的整數(shù):")p=0Fori=1To10Ifa(i)=xThenp=iExitForEndIfNextIfp=0ThenPrint"沒有找到與輸入數(shù)據(jù)相同的數(shù)!"ElsePrintStr(x)+"在數(shù)組中的位置是"+Str(p)EndIfEndSub對于上述事件過程,以下敘述中正確的是A、本程序?qū)嶋H產(chǎn)生的隨機數(shù)是0-99B、若產(chǎn)生的隨機數(shù)中有相同數(shù),則p是其中最后一個數(shù)的位置C、程序有錯,p的初值設置不對D、程序有錯,InputBox函數(shù)產(chǎn)生的數(shù)據(jù)與x的類型不匹配標準答案:A知識點解析:Rnd生成的隨機數(shù)為0-1的小數(shù),乘以100后取整后范圍為0-99,選A)。37、窗體上有一個名稱為Command1的命令按鈕,其單擊事件過程如下:PrivateSubCommand1_Click()DimsAsDoubles=0:i=1DoWhilei<6s=s+i/(i+1)i=i+1LoopPrintsEndSub該事件過程的功能是計算一個表達式的值,該表達式是A、1+1/2+2/3+3/4+4/5B、1+1/2+2/3+3/4+4/5+5/6C、1/2+2/3+3/4+4/5D、1/2+2/3+3/4+4/5+5/6標準答案:D知識點解析:While…Loop循環(huán)。i初值為1,把i值代入i/(i+1)語句可得公式為1/2+2/3+3/4+4/5+5/6,選D)。38、窗體上有一個名稱為Command1的命令按鈕,其單擊事件過程如下:OptionBase1PrivateSubCommand1_Click()Dima(4,4)AsIntegerFori=1To4Forj=1To4a(i,j)=Int(Rnd*100)NextNextx=a(1,1)y=a(1,1)Fori=1To4Forj=1To4Ifx<a(i,j)Thenx=a(i,j)Ify>a(i,j)Theny=a(i,j)Nexts=s+a(i,i)NextPrintx,y,sEndSub關(guān)于以上程序,以下敘述中錯誤的是A、二維數(shù)組元素的值是不大于99的隨機整數(shù)B、計算結(jié)果x是二維數(shù)組各元素中的最大數(shù)C、計算結(jié)果y是二維數(shù)組各元素中的最小數(shù)D、計算結(jié)果s是二維數(shù)組各行第一個元素之和標準答案:D知識點解析:程序首先通過For循環(huán)給數(shù)組a元素賦值。取隨機數(shù)函數(shù)返回的值介于0和1之間。乘以100后取整介于0和99。故A)正確。接下來對x和y賦初值(a的第一個元素),在循環(huán)內(nèi)部進行數(shù)據(jù)大小的比較,把當前比x大的存入x,比y小的存入y,循環(huán)結(jié)束后,x中存儲的是最大值,y中存儲的是最小值。故B),C)對。s中存儲一維和二維下標相同的數(shù)組元素的和。選D)。39、窗體上有一個名稱為Text1的文本框,一個名稱為Command1的命令按鈕。命令按鈕的單擊事件過程如下:PrivateSubCommand1_Click()Dimx1AsInteger,x2AsInteger,x3AsIntegers=Trim(Text1.Text)strLen=Len(s)Fori=1TostrLenc=Mid(s,i,1)SelectCasecCase"0"To"9"x1=x1+1Case"A"To"Z"x2=x2+1Case"a"To"z"x3=3+1CaseElsex4=x4+1EndSelectNextPrint"x1";x1,"x2";x2,"x3";x3,"x4";x4EndSub以下關(guān)于上述程序的敘述中,正確的是A、s是去掉文本框中字符串末尾的空格B、SelectCasec有誤,Case后應該是一個表達式C、各Case分支條件有誤,不能用To表示字符的取值區(qū)間D、x4是字符串中非字母、非數(shù)字字符的個數(shù)標準答案:D知識點解析:Trim函數(shù)是去掉字符串前面和后面的空格,A)錯。SelectCase語句的測試表達式,可以是算術(shù)表達式或字符表達式,其值應是數(shù)字或字符型,B)錯。Case語句可以是連續(xù)的范圍:界1To界2,如:12To20,C)錯。x4是排除了字符串中字母、數(shù)字字符的個數(shù)的和。選D)。40、窗體上有一個名稱為Command1的命令按鈕。要求編寫程序,把文件f1.txt的內(nèi)容寫到文件f2.txt中,然后將f1.txt刪除。命令按鈕的單擊事件過程如下:PrivateSubCommand1_Click()Open"c:\f1.txt"ForInputAs#1Open"c:\f2.txt"ForOutputAs#2DoWhileNotEOF(2)LineInput#1,str1Print#2,str1LoopCloseKill"c:\f1.txt"EndSub該程序運行時發(fā)生錯誤,應該進行的修改是A、打開f1.txt應該使用Output方式,打開f2.txt應該使用Input方式B、NotEOF(2)應該改為NotEOF(1)C、LineInput應改為GetD、Close語句改為CloseAll標準答案:B知識點解析:Open打開文件時,可以用三種模式,即OutPut:打開一個文件,將對該文件進行寫操作;Input:打開一個文件,將對該文件進行讀操作;Append:打開一個文件,將在該文件末尾追加記錄。DoWhile循環(huán)應該判斷1#文件的結(jié)尾,即DoWhileNotEOF(1),不是結(jié)尾的話把內(nèi)容寫到2#文件中。LineInput語句為從已打開的順序文件中讀出一行并將它分配給String變量。Close語句后面有文件號,就關(guān)閉這個文件,否則就關(guān)閉所有打開的文件。此題中應該關(guān)閉所有的文件。選B)。國家二級VB機試(選擇題)模擬試卷第2套一、選擇題(本題共40題,每題1.0分,共40分。)1、結(jié)構(gòu)化程序設計的基本原則不包括()。A、多態(tài)性B、自頂向下C、模塊化D、逐步求精標準答案:A知識點解析:結(jié)構(gòu)化程序設計的思想包括:自頂向下、逐步求精、模塊化、限制使用goto語句,所以選擇A2、程序流程圖中帶有箭頭的線段表示的是()。A、圖元關(guān)系B、數(shù)據(jù)流C、控制流D、調(diào)用關(guān)系標準答案:C知識點解析:在數(shù)據(jù)流圖中,用標有名字的箭頭表示數(shù)據(jù)流。在程序流程圖中,用標有名字的箭頭表示控制流。所以選擇C3、在長度為n的有序線性表中進行二分查找,最壞情況下需要比較的次數(shù)是()。A、O(n)B、O(n2)C、O(log2n)D、O(nlog2n)標準答案:C知識點解析:當有序線性表為順序存儲時才能用二分法查找??梢宰C明的是對于長度為n的有序線性表,在最壞情況下,二分法查找只需要比較log2n次,而順序查找需要比較n次。4、下列敘述中正確的是()。A、順序存儲結(jié)構(gòu)的存儲一定是連續(xù)的,鏈式存儲結(jié)構(gòu)的存儲空間不一定是連續(xù)的B、順序存儲結(jié)構(gòu)只針對線性結(jié)構(gòu),鏈式存儲結(jié)構(gòu)只針對非線性結(jié)構(gòu)C、順序存儲結(jié)構(gòu)能存儲有序表,鏈式存儲結(jié)構(gòu)不能存儲有序表D、鏈式存儲結(jié)構(gòu)比順序存儲結(jié)構(gòu)節(jié)省存儲空間標準答案:A知識點解析:鏈式存儲結(jié)構(gòu)既可以針對線性結(jié)構(gòu)也可以針對非線性結(jié)構(gòu),所以B)與C)錯誤。鏈式存儲結(jié)構(gòu)中每個結(jié)點都由數(shù)據(jù)域與指針域兩部分組成,增加了存儲空間,所以D)錯誤。5、軟件按功能可以分為:應用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于應用軟件的是()。A、編譯程序B、操作系統(tǒng)C、教務管理系統(tǒng)D、匯編程序標準答案:C知識點解析:編譯軟件、操作系統(tǒng)、匯編程序都屬于系統(tǒng)軟件,只有C)教務管理系統(tǒng)才是應用軟件。6、下面敘述中錯誤的是()。A、軟件測試的目的是發(fā)現(xiàn)錯誤并改正錯誤B、對被調(diào)試的程序進行"錯誤定位"是程序調(diào)試的必要步驟C、程序調(diào)試通常也稱為DebugD、軟件測試應嚴格執(zhí)行測試計劃,排除測試的隨意性標準答案:A知識點解析:軟件測試的目的是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程,并不涉及改正錯誤,所以選項A)錯誤。程序調(diào)試的基本步驟有:錯誤定位、修改設計和代碼,以排除錯誤、進行回歸測試,防止引進新的錯誤。程序調(diào)試通常稱為Debug,即排錯。軟件測試的基本準則有:所有測試都應追溯到需求、嚴格執(zhí)行測試計劃,排除測試的隨意性、充分注意測試中的群集現(xiàn)象、程序員應避免檢查自己的程序、窮舉測試不可能、妥善保存測試計劃等文件。7、軟件詳細設計生產(chǎn)的圖如下:該圖是()A、N-S圖B、PAD圖C、程序流程圖D、E-R圖標準答案:C知識點解析:N-S圖提出了用方框圖來代替?zhèn)鹘y(tǒng)的程序流程圖,所以A)不對。PAD圖是問題分析圖,它是繼承程序流程圖和方框圖之后提出的又一種主要用于描述軟件詳細設計的圖形表示工具,所以B)不對。E-R圖是數(shù)據(jù)庫中的用于表示E-R模型的圖示工具,所以D)不對。根據(jù)圖中所示表示方法是進行軟件詳細設計時使用的程序流程圖。8、數(shù)據(jù)庫管理系統(tǒng)是()。A、操作系統(tǒng)的一部分B、在操作系統(tǒng)支持下的系統(tǒng)軟件C、一種編譯系統(tǒng)D、一種操作系統(tǒng)標準答案:B知識點解析:數(shù)據(jù)庫管理系統(tǒng)是數(shù)據(jù)庫的機構(gòu),它是一種系統(tǒng)軟件,負責數(shù)據(jù)庫中數(shù)據(jù)組織、數(shù)據(jù)操縱、數(shù)據(jù)維護、控制及保護和數(shù)據(jù)服務等。是一種在操作系統(tǒng)之上的系統(tǒng)軟件。9、有三個關(guān)系R、S和T如下:由關(guān)系R和S通過運算得到關(guān)系T,則所使用的運算為()。A、并B、自然連接C、笛卡爾積D、交標準答案:D知識點解析:自然連接是一種特殊的等值連接,它要求兩個關(guān)系中進行比較的分量必須是相同的屬性組,并且在結(jié)果中把重復的屬性列去掉,所以B)錯誤。笛卡爾積是用R集合中元素為第一元素,S集合中元素為第二元素構(gòu)成的有序?qū)?,所以C)錯誤。根據(jù)關(guān)系T可以很明顯的看出是從關(guān)系R與關(guān)系S中取得相同的關(guān)系組所以取得是交運算,選擇D)。10、設有表示學生選課的三張表,學生S(學號,姓名,性別,年齡,身份證號),課程C(課號,課名),選課SC(學號,課號,成績),則表SC的關(guān)鍵字(鍵或碼)為()。A、課號,成績B、學號,成績C、學號,課號D、學號,姓名,成績標準答案:C知識點解析:學號是學生表S的主鍵,課號是課程表C的主鍵,所以選課表SC的關(guān)鍵字就應該是與前兩個表能夠直接聯(lián)系且能唯一定義的學號和課號,所以選擇C11、以下不能輸出"Program"的語句是()。A、PrintMid("VBProgram",3,7)B、PrintRight("VBProgram",7)C、PrintMid("VBProgram",3)D、PrintLeft("VBProgram",7)標準答案:D知識點解析:本題用到了字符串處理函數(shù)Mid、Right和left函數(shù)。中部截取函數(shù)Mid(C,N1,N2),功能是從字符串C中的C1位置開始往后取N2個字符,如果省略N2,默認從C1位置取出所有字符。右部截取函數(shù)Right(C,N),功能是取字符串C右邊N個字符。左部截取函數(shù)Left(C,N),功能是取字符串C左邊N個字符。根據(jù)以上函數(shù)用法,選項A、B、C都能輸出"Program",D選項是從字符串的最左邊開始取7個字符,結(jié)果為VBProgr,不能輸出"Program",故D選項錯誤。12、以下敘述中錯誤的是()。A、在通用過程中,多個形式參數(shù)之間可以用逗號作為分隔符B、在Print方法中,多個輸出項之間可以用逗號作為分隔符C、在Dim語句中,所定義的多個變量可以用逗號作為分隔符D、當一行中有多個語句時,可以用逗號作為分隔符標準答案:D知識點解析:一般情況下,輸入程序時要求一行只寫一條語句。但語句行較短時也可以將多個語句書寫在同一行中,這時,語句之間使用冒號分隔。故D選項錯誤。13、以下關(guān)于函數(shù)過程的敘述中,正確的是()。A、函數(shù)過程形參的類型與函數(shù)返回值的類型沒有關(guān)系B、在函數(shù)過程中,過程的返回值可以有多個C、當數(shù)組作為函數(shù)過程的參數(shù)時,既能以傳值方式傳遞,也能以傳址方式傳遞D、如果不指明函數(shù)過程參數(shù)的類型,則該參數(shù)沒有數(shù)據(jù)類型標準答案:A知識點解析:定義函數(shù)過程的格式:Function函數(shù)過程名([形參表])As函數(shù)返回值的數(shù)據(jù)類型函數(shù)過程名=表達式EndFunction說明:①形參的類型可以是任何數(shù)據(jù)類型,函數(shù)返回值的類型是調(diào)用函數(shù)后返回的數(shù)據(jù)類型,,他們沒有關(guān)系,互不影響。故選項A正確。②選項B錯誤的原因是:函數(shù)過程中可以有多個"函數(shù)過程名=表達式"這樣的語句,但是最終函數(shù)只能有一個返回值。如果省略這條語句,函數(shù)過程則返回一個默認值,數(shù)值函數(shù)過程返回0,字符串函數(shù)過程返回空字符串。③選項C錯誤的原因是:數(shù)組作為函數(shù)過程的參數(shù)時,這時數(shù)組名看作是一個符號地址,實參和形參之間傳遞的是地址,所以以傳址方式傳遞。④選項D錯誤的原因是:形參如果沒指明數(shù)據(jù)類型,默認為Variant類型。14、以下關(guān)于過程及過程參數(shù)的描述中,錯誤的是()。A、過程的參數(shù)可以是控件名稱B、調(diào)用過程時使用的實參的個數(shù)應與過程形參的個數(shù)相同(假定不含可變參數(shù))C、只有函數(shù)過程能夠?qū)⑦^程中處理的信息返回到調(diào)用程序中D、窗體可以作為過程的參數(shù)標準答案:C知識點解析:過程定義時,形參除了可以是整型、單精度、雙精度等數(shù)據(jù)類型外,還可以是控件或窗口等對象型。相對應的調(diào)用過程時實參也可以是一般數(shù)據(jù)類型、控件名或窗體。故選項A、D正確。調(diào)用過程時使用的實參的個數(shù)、類型、順序應與過程中形參相同。故選項B正確。在過程調(diào)用時,不只是函數(shù)過程能把過程中處理的信息傳回到調(diào)用程序中,Sub過程也可以。Sub過程中形參聲明時前面有關(guān)鍵字ByRef或省略ByRef(默認)時,實參和形參之間傳遞的是地址,Sub過程中形參的變化也會引起實參的變化,這樣Sub過程中處理的信息也可以傳回調(diào)用程序中。故選項C說法錯誤。15、下面關(guān)于標準模塊的敘述中錯誤的是()。A、標準模塊中可以聲明全局變量B、標準模塊中可以包含一個SubMain過程,但此過程不能被設置為啟動過程C、標準模塊中可以包含一些Public過程D、一個工程中可以含有多個標準模塊標準答案:B知識點解析:標準模塊中可以包含一個SubMain過程,可以通過"工程屬性"對話框中將SubMain過程設置啟動對象。故B選項錯誤。16、下面正確使用動態(tài)數(shù)組的是()。A、

B、

C、

D、

標準答案:A知識點解析:動態(tài)數(shù)組的使用時,先在窗體層、標準模塊或過程中聲明一個沒有下標的數(shù)組(括號不能省略),不指定維數(shù)。然后,在過程中用ReDim語句定義帶下標的數(shù)組,給出數(shù)組的維數(shù)。注意:用ReDim定義的數(shù)組,只能改變數(shù)組元素的個數(shù),不能改變數(shù)組的維數(shù)和數(shù)據(jù)類型。本題選項B、C中ReDim語句改變了數(shù)組的數(shù)據(jù)類型,故錯誤。選項D中聲明數(shù)組時有下標,應該沒有下標,故也錯誤。選項A正確。17、在設計窗體時雙擊窗體的任何地方,可以打開的窗口是()。A、代碼窗口B、屬性窗口C、工程資源管理器窗口D、工具箱窗口標準答案:A知識點解析:設計窗體時雙擊窗體的任何地方,默認打開的是代碼窗口。故選A。18、若變量a未事先定義而直接使用(例如:a=0),則變量a的類型是()。A、IntegerB、StringC、BooleanD、Variant標準答案:D知識點解析:VB不要求必須先定義再使用。如果沒有提前定義變量,就直接使用,系統(tǒng)就會將變量的數(shù)據(jù)類型指定為默認數(shù)據(jù)類型Variant變體型。故選D。19、以下關(guān)系表達式中,其值為True的是()。A、XYZ>"XYz"B、VisualBasic<>"visualbasic"C、the="there"D、Integer<"Int"標準答案:B知識點解析:用關(guān)系運算符比較兩個操作數(shù)時,如果兩個操作數(shù)是字符型的,按字符的ASCII碼從左到右一一比較,即先比較第1個,若相同再比較第2個,依次比較,直到比較完或不同為止。選項A中兩個字符串前2個字符相同,后1個不同,"Z"的ASCII值<"z"的ASCII值,故"XYZ"<"XYz",結(jié)果應返回Fasle。選項C中應該是兩個字符串完全一樣,才相等。很明顯兩個字符不相等,返回False。選項D中兩個字符串前3個字符一樣,第1個字符串比第2個字符串長,"Integer">"Int",返回False。選項B中兩個字符串不完全一樣,有大寫和小寫的字符,不等。所以返回True。故B選項正確。20、執(zhí)行以下程序段:a$="VisualBasicProgramming"b$="C++"c$=UCase(Left$(a$,7))&b$&Right$(a$,12)后,變量c$的值為()。A、VisualBASICProgrammingB、VISUALC++ProgrammingC、VisualC++ProgrammingD、VISUALBASICProgramming標準答案:B知識點解析:UCase(Left(a$,7))是從字符串a(chǎn)的左邊向右取出7個字符,然后再全部轉(zhuǎn)換為大寫字母,結(jié)果是:"VISUAL]",Right$(a$,12)是從字符串a(chǎn)的右邊向左取出12個字符,結(jié)果為"]Programming",&是字符串連接符,把"VISUAL]"&"C++"&"]Programming"連接在一起,合成字符串"VISUAL]C++]Programming",并把它賦給字符串變量c,所以字符串變量c的值就是合成的字符串。故B選項正確。21、若看到程序中有以下事件過程,則可以肯定的是,當程序運行時()。PrivateSubClick_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)Print"VBProgram"EndSubA、用鼠標左鍵單擊名稱為"Command1"的命令按鈕時,執(zhí)行此過程B、用鼠標左鍵單擊名稱為"MouseDown"的命令按鈕時,執(zhí)行此過程C、用鼠標右鍵單擊名稱為"MouseDown"的控件時,執(zhí)行此過程D、用鼠標左鍵或右鍵單擊名稱為"Click"的控件時,執(zhí)行此過程標準答案:D知識點解析:本題中,Click是控件的名稱,MouseDown是鼠標按下事件,當用鼠標左鍵或右鍵單擊Click控件時就會觸發(fā)MouseDown事件,執(zhí)行MouseDown事件過程。故選D。22、窗體上有名稱為Command1的命令按鈕和名稱為Text1的文本框PrivateSubCommand1_Click()Text1.Text="程序設計"Text1.SetFocusEndSubPrivateSubText1_GotFocus()Text1.Text="等級考試"EndSub運行以上程序,單擊命令按鈕后()。A、文本框中顯示的是"程序設計",且焦點在文本框中B、文本框中顯示的是"等級考試",且焦點在文本框中C、文本框中顯示的是"程序設計",且焦點在命令按鈕上D、文本框中顯示的是"等級考試",且焦點在命令按鈕上標準答案:B知識點解析:運行程序,單擊命令按鈕后,執(zhí)行Command1_Click事件過程代碼,文本框Text1中顯示"程序設計",并且文本框Text1獲得焦點,此時焦點在Text1中;當Text1獲得焦點就會觸發(fā)它的Got_Focus事件,執(zhí)行Got_Focus事件過程,結(jié)果文本框Text1中顯示"等級考試"。故B選項正確。23、要求當鼠標在圖片框P1中移動時,立即在圖片框中顯示鼠標的位置坐標。下面能正確實現(xiàn)上述功能的事件過程是()。A、PrivateSubP1_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)PrintX,YEndSubB、PrivateSubP1_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)Picture.PrintX,YEndSubC、PrivateSubP1_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)P1.PrintX,YEndSubD、PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)P1.PrintX,YEndSub標準答案:C知識點解析:當鼠標在圖片框P1中移動時,就會觸發(fā)P1的鼠標移動事件,即P1_MouseMove事件,故排除B選項;鼠標在圖片框P1中移動時,立即在圖片框中顯示鼠標的位置坐標,說明是在圖片框上輸出數(shù)據(jù),所以用P1的Print語句實現(xiàn)。故C選項正確。24、為了使窗體的大小可以改變,必須把它的BorderStyle屬性設置為()。A、1B、2C、3D、4標準答案:B知識點解析:窗體的BorderStyle屬性是用來設置窗體的邊框樣式的。屬性值1為FixedSingle,3為FixedDialog,4為FixedToolWindow,設置為這3個屬性值都不能改變窗口大小。2是Sizable,表示窗體大小可以改變。故選B。25、要使兩個單選按鈕屬于同一個框架,下面三種操作方法中正確的是()。①先畫一個框架,再在框架中畫兩個單選按鈕②先畫一個框架,再在框架外畫兩個單選按鈕,然后把單選按鈕拖到框架中③先畫兩個單選按鈕,再畫框架將單選按鈕框起來A、①B、①、②C、③D、①、②、③標準答案:A知識點解析:①的操作方法可使兩個單選按鈕屬于同一個框架,其他方法不行。故A選項正確。26、能夠存放組合框的所有項目內(nèi)容的屬性是()。A、CaptionB、TextC、ListD、Selected標準答案:C知識點解析:組合框沒有Caption屬性;Text屬性用來設置或返回組合框中當前選項的文本內(nèi)容;Selected屬性是列表框控件的屬性,組合框沒有Selected屬性;List屬性用來設置或返回組合框中的各選項,它是一個字符串數(shù)組,組合框中各選項內(nèi)容用List(下標)表示。故A、B、D選項錯誤,C選項正確。27、以下敘述中錯誤的是()。A、在程序運行時,通用對話框控件是不可見的B、調(diào)用同一個通用對話框控件的不同方法(如ShowOpen或ShowSave)可以打開不同的對話框窗口C、調(diào)用通用對話框控件的ShowOpen方法,能夠直接打開在該通用對話框中指定的文件D、調(diào)用通用對話框控件的ShowColor方法,可以打開顏色對話框窗口標準答案:C知識點解析:調(diào)用通用對話框的ShowOpen方法,只是顯示文件"打開"對話框,如果ShowOpen方法后面沒有其他處理文件的代碼,就不能實現(xiàn)打開文件的功能。故選項C錯誤。28、下面控件中,沒有Caption屬性的是()。A、復選框B、單選按鈕C、組合框D、框架標準答案:C知識點解析:Caption屬性是設置或返回控件的標題。組合框沒有Caption屬性。故選C。29、設窗體中有一個文本框Text1,若在程序中執(zhí)行了Text1.SetFocus,則觸發(fā)()。A、Text1的SetFocus事件B、Text1的GotFocus事件C、Text1的LostFocus事件D、窗體的GotFocus事件標準答案:B知識點解析:SetFocus是控件獲得焦點的方法,GotFocus是控件獲得焦點后觸發(fā)的事件,LostFocus是控件失去焦點后觸發(fā)的事件。本題中程序執(zhí)行Text1.SetFocus后,Text1就獲得焦點,進而觸發(fā)Text1的GotFocus事件。故B選項正確。30、窗體上有兩個水平滾動條HV、HT,還有一個文本框Text1和一個標題為"計算"的命令按鈕Command1,并編寫了以下程序:PrivateSubCommand1_Click()Callcalc(HV.Value,HT.Value)EndSubPublicSubcalc(xAsInteger,yAsInteger)Text1.Text=x*yEndSub運行程序,單擊"計算"按鈕,可根據(jù)速度與時間計算出距離,并顯示計算結(jié)果。對以上程序,下列敘述中正確的是()。A、過程調(diào)用語句不對,應為calc(HV,HT)B、過程定義語句的形式參數(shù)不對,應為Subcalc(xAsControl,yAsControl)C、計算結(jié)果在文本框中顯示出來D、程序不能正確運行標準答案:C知識點解析:訪問滾動條控件的值,可以直接使用控件的名稱,也可以在名稱后面指明Value屬性。滾動條位置是用數(shù)值來表示的,因此定義Calc過程時參數(shù)應該定義為Integer類型。程序中,Text1.Text=x*y語句說明計算的結(jié)果在文本框中顯示出來。31、在窗體上畫一個命令按鈕,然后編寫如下事件過程:PrivateSubCommand1_Click()DimI,NumRandomizeDoForI=1To1000Num=Int(Rnd*100)PrintNum;SelectCaseNumCase12ExitForCase58ExitDoCase65,68,92EndEndSelectNextILoopEndSub上述事件過程執(zhí)行后,下列描述中正確的是()。A、Do循環(huán)執(zhí)行的次數(shù)為1000次B、在For循環(huán)中產(chǎn)生的隨機數(shù)小于或等于100C、當所產(chǎn)生的隨機數(shù)為12時結(jié)束所有循環(huán)D、當所產(chǎn)生的隨機數(shù)為65、68或92時窗體關(guān)閉、程序結(jié)束標準答案:D知識點解析:程序Do循環(huán)中嵌套了For循環(huán),Do循環(huán)沒有設置結(jié)束條件,而是在For循環(huán)體中的Select語句中設置了退出Do循環(huán)和For循環(huán)及結(jié)束程序的分支,因此Do循環(huán)的次數(shù)無法確定。隨機函數(shù)Rnd產(chǎn)生[0,1)之間的一個數(shù),包括0但不包含1,因此Rnd*100的范圍是大于等于0小于100。隨機數(shù)為65、68或92時結(jié)束程序關(guān)閉窗體,為58時退出Do循環(huán),為12時退出For循環(huán)進入下一次Do循環(huán)。32、在窗體上畫一個名為Command1的命令按鈕,然后編寫如下代碼:OptionBase1PrivateSubCommand1_Click()Dimaa=Array(1,2,3,4)j=1Fori=4To1Step-1s=s+a(i)*jj=j*10NextiPrintsEndSub運行上面的程序,其輸出結(jié)果是()。A、1234B、12C、34D、4321標準答案:A知識點解析:33、窗體上有一個名稱為Combo1的組合框,要求在其編輯區(qū)輸入文本并按回車鍵后,編輯區(qū)中的文本被添加到列表中。下面能實現(xiàn)這一功能的是()。A、PrivateSubCombo1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)IfKeyCode=13ThenCombo1.AddItemCombo1.TextEndIfEndSubB、PrivateSubCombo1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)IfKeyCode=13ThenCombo1.AddItemText1.TextEndIfEndSubC、PrivateSubCombo1_Click()Combo1.AddItemCombo1.TextEndSubD、PrivateSubCombo1_Click()Combo1.AddItemText1.TextEndSub標準答案:A知識點解析:在組合框中的輸入的文本保存在它的Text屬性中,根據(jù)程序要求,只要判斷按下了回車鍵后,使用組合框的AddItem方法把Text中的字符添加到列表中即可。選項C和D沒有判斷是否按下回車鍵,所以排除。而選項B中使用AddItem方法添加的是Text1.Text的值,不是組合框Combo1的Text值,所以也不對。34、工程文件中包含一個模塊文件和一個窗體文件。模塊文件的程序代碼是:PublicxAsIntegerPrivateyAsInteger窗體文件的程序代碼是:DimaAsIntegerPrivateSubForm_Load()DimbAsIntegera=2:b=3:x=10:y=20EndSubPrivateSubCommand1_Click()a=a+5:b=b+5:x=x+5:y=y(tǒng)+5Printa;b;x;yEndSub運行程序,單擊窗體上的命令按鈕,則在窗體上顯示的是()。A、55155B、751525C、78155D、75155標準答案:D知識點解析:程序在模塊文件中定義x為整型全局變量,在整個工程中都起作用,而y定義為整型私有變量,只能在本模塊文件中起作用。在窗體文件中變量a在本窗體文本中起作用,窗體加載事件中定義的變量b和沒有聲明的變量y,只在本事件過程起作用。程序窗體加載時,對后邊有影響的變量值為a為2,x為10,沒有指定初值的變量值默認為0,因此單擊命令按鈕后,a=a+5=7,b=b+5=5,x=x+5=15,y=y(tǒng)+5=5,結(jié)果輸出75155。35、某人編寫了向隨機文件中寫一條記錄的程序,代碼如下:TypeRTypeNameAsString*10TelAsString*20EndTypePrivateSubCommand1_Click()DimpAsRTypep.Name=InputBox("姓名")p.Tel=InputBox("電話號")Open"Books.dat"ForRandomAs#1Put#1,,pClose#1EndSub該程序運行時有錯誤,修改的方法是()。A、在類型定義"TypeRType"之前加上"Private"B、DimpAsRType必須置于窗體模塊的聲明部分C、應把Open語句中的ForRandom改為ForOutputD、Put語句應該寫為Put#1,p.Name,p.Tel標準答案:A知識點解析:記錄類型的定義必須放在模塊的聲明部分,當在標準模塊中定義時,關(guān)鍵字Type前可以有Public(默認)或Private,而如果在窗體模塊中定義,則必須在前面加上關(guān)鍵字Private。Open語句中使用ForRandom表示文件以隨機方式存取。Put語句的語法為:Put#文件號,[記錄號],變量。其中"變量"是除對象變量和數(shù)組變量外的任何變量。36、有如下程序:PrivateSubForm_Click()DimsAsInteger,pAsIntegerp=1Fori=1To4Forj=1Tois=s+jNextjp=p*sNextiPrintpEndSub程序運行后,單擊窗體,則輸出結(jié)果是()。A、90B、180C、400D、800標準答案:D知識點解析:37、窗體上有Command1、Command2兩個命令按鈕。現(xiàn)編寫以下程序:OptionBase0Dima()AsInteger,mAsIntegerPrivateSubCommand1_Click()m=InputBox("請輸入一個正整數(shù)")ReDima(m)EndSubPrivateSubCommand2_Click()m=InputBox("請輸入一個正整數(shù)")ReDima(m)EndSub運行程序時,單擊Command1后輸入整數(shù)10,再單擊Command2后輸入整數(shù)5,則數(shù)組a中元素的個數(shù)是()。A、5B、6C、10D、11標準答案:B知識點解析:程序中OptionBase0表示指定數(shù)組的下標默認下界為0。ReDim語句用來重新定義動態(tài)數(shù)組,按定義的上下界重新分配存儲單元。在一個程序中,可以多次用ReDim語句定義同一個數(shù)組,隨時修改數(shù)組中元素的個數(shù)。程序中先執(zhí)行ReDima(10),然后執(zhí)行了ReDima(5),因此數(shù)組a的下界為0,上界為5,共有6個元素。38、在窗體上畫一個命令按鈕和一個標簽,其名稱分別為Command1和Label1,然后編寫如下事件過程:PrivateSubCommand1_Click()Counter=0Fori=1To4Forj=6To1Step-2Counter=Counter+1NextjNextiLabel1.Caption=Str(Counter)EndSub程序運行后,單擊命令按鈕,標簽中顯示的內(nèi)容是()。A、11B、12C、16D、20標準答案:B知識點解析:39、在窗體上畫兩個文本框(名稱分別為Text1和Text2)和一個命令按鈕(名稱為Command1),然后編寫如下事件過程:PrivateSubCommand1_Click()x=0DoWhilex<50x=(x+2)*(x+3)n=n+1LoopText1.Text=Str(n)Text2.Text=Str(x)EndSub程序運行后,單擊命令按鈕,在兩個文本框中顯示的值分別為()。A、1和0B、2和72C、3和50D、4和168標準答案:B知識點解析:40、假定有以下程序段:Fori=1To3Forj=5To1Step-1Printi*jNextjNexti則語句Printi*j的執(zhí)行次數(shù)是()。A、15B、16C、17D、18標準答案:A知識點解析:國家二級VB機試(選擇題)模擬試卷第3套一、選擇題(本題共33題,每題1.0分,共33分。)1、編寫如下程序:PrivateSubCommand1Click()DimxAsInteger,yAsIntegerx=InputBox(“輸入第一個數(shù)”):y=InputBox(“輸入第二個數(shù)”)Callf(x,y)Printx,yEndSubSubf(aAsInteger,ByValbAsInteger)a=a*2:x=a+b:b=b+100EndSub程序運行后,單擊命令按鈕Command1,并輸入數(shù)值10和15,則輸出結(jié)果為A、10115B、20115C、3515D、2015標準答案:D知識點解析:在VisualBasic中調(diào)用過程時,參數(shù)有兩種傳遞形式:按值傳遞(Byval)和按址傳遞(Byref),默認為按址傳遞。其中,當參數(shù)按址傳遞時,如果在引用該參數(shù)的過程中改變了形參的值,同時也就改變了傳遞參數(shù)時實參變量的值。本題中f的參數(shù)a是按地址傳遞的,b是按值傳遞的,因此在f中對a的改變會影響實參x,對b的操作不會影響實參y。2、現(xiàn)有程序如下:OptionBase1PrivateSubFormClick()Dimx(5,6)AsInteger,y(5)AsIntegerFori=1Tn5Forj=1To6x(i,j)=Int(Rnd*9+1)NextjNextiCallf(5,6,x,y)Fori=1To5Printy(i);NextiEndSubSubf(mAsInteger,nAsInteger,a()AsInteger,b()AsIntegerA、調(diào)用過程語句有錯,參數(shù)不匹配B、程序有錯,數(shù)組下標越界C、Y數(shù)組中保存的是x數(shù)組每行數(shù)據(jù)之和D、x數(shù)組中數(shù)據(jù)的取值范圍是1-10標準答案:C知識點解析:本題中子過程f的四個形參分別為整型、整型、整型數(shù)組和整型數(shù)組,在窗體的單擊事件中調(diào)用過程f,四個實參和四個形參可以匹配,調(diào)用語句沒有錯誤;在二重循環(huán)中為二維數(shù)組的每個元素賦值,數(shù)組下界從1開始,因此不會越界;在二重循環(huán)中為數(shù)組x的元素賦值為0~9之間的值;在過程f中用一個二重循環(huán)以此計算x數(shù)組每行數(shù)據(jù)之和放在y數(shù)組中。3、窗體上有一個名稱為Command1的命令按鈕,一個名稱為Text1的文本框。編寫如下程序:PrivateSubCorimaandlClick()DimxAsIntegerx=Val(InputBox(“輸入數(shù)據(jù)”)):Text1=Str(x+fun(x)+fun(x))EndSubPrivateFunctionfun(ByRefnAsInteger)IfnMod3=0Thenn=n+nElsen=n*nEndIffun=nEndFunction對于A、語句fun=n有錯,因為n是整型,fun沒有定義類型B、運行程序,輸入值為5時,文本框中顯示655C、運行程序,輸入值為6時,文本框中顯示42D、ByRef表示參數(shù)按址傳遞標準答案:A知識點解析:本題中的函數(shù)fun的功能是判斷參數(shù)是否能被3整除,若可以整除則將n翻倍,否則將n變?yōu)閚的平方返回。在函數(shù)頭部沒有聲明函數(shù)的返回值類型,默認為變體型,可以接受任何數(shù)據(jù)類型的賦值:ByRef表示參數(shù)按址傳遞,對形參的改變將會影響實參;當輸入5的時候輸出5+25+625=655;當輸入6的時候輸出6+12+24=42。4、窗體上有一個名稱為Commandl的命令按鈕,并有如下程序代碼:PrivateSubCommand1Click()Staticaa=1:b=2:c=3Callf(a,b,c)Printa;b;cEndSubSubf(ByValx,ByRefy,z)x=x+1:y=y+1:z=z+1EndSub運行程序,單擊命令按鈕,窗體上顯示的是A、133B、134C、233D、234標準答案:B知識點解析:在VisualBasic中調(diào)用過程時,參數(shù)有兩種傳遞形式:按值傳遞(Byval)和按址傳遞(Byref),默認為按址傳遞。其中,當參數(shù)按址傳遞時,如果在引用該參數(shù)的過程中改變了形參的值,同時也就改變了傳遞參數(shù)時實參變量的值。本題中f的參數(shù)x是按值傳遞的,y和z是按地址傳遞的,因此在f中對x的改變不會影響實參a,對y和z的操作會影響實參b和c。5、窗體上有一個名稱為Commandl的命令按鈕,其單擊事件過程如下:PrivateSubCommand1Click()DimxAsInteger,yAsIntegerStaticzAsIntegerx=3:y=5:z=yCallf(x,y,z)Printx;y;zEndSubPrivateSubf(ByValaAsInteger,ByRefbAsInteger,cAsInteger)a=a+a-b=b+b:c=c+cEndSub運行程序,單擊命令A、355B、3510C、3105D、31010標準答案:D知識點解析:在VisualBasic中調(diào)用過程時,參數(shù)有兩種傳遞形式:按值傳遞(Byval)和按址傳遞(Bytef),默認為按址傳遞。其中,當參數(shù)按址傳遞時,如果在引用該參數(shù)的過程中改變了形參的值,同時也就改變了傳遞參數(shù)時實參變量的值。本題中f的參數(shù)a是按值傳遞的,b和c是按地址傳遞的,因此在f中對a的改變不會影響實參x,對b和c的操作會影響實參x和v。6、窗體上有一個名稱為Commandl的命令按鈕,其單擊事件過程及相關(guān)的代碼如下PrivateSubCommand1ClicDimxkOimAsInteger,yAsIntegerx=Val(InputBox(“輸入整數(shù)”))Y=Val(inputBox(“輸入整數(shù)”))PrintStr(fun(x,y)+x+y)EndSubPrivateFunctionfun(ByRefmAsInteger,ByValnAsInteger)m=m*m:n=n+n:funA、27B、28C、33D、38標準答案:C知識點解析:在VisualBasic中調(diào)用過程時,參數(shù)有兩種傳遞形式:按值傳遞(Byval)和按址傳遞(Byref),默認為按址傳遞。其中,當參數(shù)按址傳遞時,如果在引用該參數(shù)的過程中改變了形參的值,同時也就改變了傳遞參數(shù)時實參變量的值。本題中fun的參數(shù)m是按地址傳遞的,n是按值傳遞的,因此在f中對m的改變會影響實參x,對n的操作不會影響實參y,即輸出的是Str(19+9+5)=“33”。7、設有如下程序:PrivateSubInv(ByValxStrAsString,yStrAsString)DimtStrAsStringDimLAsIntegerL=Len(xStr)DoWhileL>=1tStr=tStr+Mid(xStr,L,1):L=L一1LoopyStr=tStrEndSubPrivateSubFormClick(_)DimS1AsString,S2AsStringS1=“abcdef”InvS1,S2PrintA、abcdefB、afbecdC、fedcbaD、defabc標準答案:C知識點解析:在VisualBasic中調(diào)用過程時,參數(shù)有兩種傳遞形式:按值傳遞(Byval)和按址傳遞(Byref),默認為按址傳遞。其中,當參數(shù)按址傳遞時,如果在引用該參數(shù)的過程中改變了形參的值,同時也就改變了傳遞參數(shù)時實參變量的值。本題中Inv的參數(shù)xStr是按值傳遞的,yStr是按地址傳遞的,因此在Inv中對xStr的改變不會影響實參S1,對yStr的操作會影響實參S2。過程Inv的作用是在每次循環(huán)中取出S1字符串靠后面的值連接到tStr中,然后將tStr賦值給yStr從而通過地址傳遞帶回給S2,即字符串的逆8、設有如下程序:PrivateSubsV(ByValmAsInteger,nAsInteger)m=m*2:n=n一5:Printm;nEndSubPrivateSUbFormClick()DiInxAsInteg

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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

提交評論