版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
國家二級VB機試(選擇題)模擬試卷23(共9套)(共211題)國家二級VB機試(選擇題)模擬試卷第1套一、選擇題(本題共25題,每題1.0分,共25分。)1、下面不能在信息框中輸出“VisualBasic”的是()。A、x=MsgBox("VisualBasi")B、MsgBox("VisualBasic")C、MsgBox"VisualBasic"D、CallMsgBOX"VisualBasic"標準答案:C知識點解析:MsgBox()函數用于顯示提示信息,并可返回一個代表用戶單擊了哪個按鈕的Integer類型值,當其作為函數使用時必須將參數放在括號內部,而返回值可以賦值給一個變量,也可以單獨使用此函數而不將其返回值賦值給變量;MsgBox過程也用于顯示提示信息,作為過程必須使用Call關鍵字來進行調用,其參數不能加括號。2、冒泡排序在最壞情況下的比較次數是A、n(n+1)/2B、nlog2nC、n(n-1)/2D、n/2標準答案:C知識點解析:對n個結點的線性表采用冒泡排序,在最壞情況下,冒泡排序需要經過n/2遍的從前往后的掃描和n/2遍的從后往前的掃描,需要的比較次數為n(n-1)/2。3、對長度為n的線性表作快速排序,在最壞情況下,比較次數為A、nB、n-1C、n(n-1)D、n(n-1)/2標準答案:D知識點解析:假設線性表的長度為n,則在最壞情況下,冒泡排序需要經過n/2遍的從前往后的掃描和n/2遍的從后往前的掃描,需要的比較次數為n(n-1)/2??焖倥判蚍ㄒ彩且环N互換類的排序方法,但由于它比冒泡排序法的速度快,因此,稱為快速排序法。4、下列敘述中正確的是A、程序執(zhí)行的效率與數據的存儲結構密切相關B、程序執(zhí)行的效率只取決于程序的控制結構C、程序執(zhí)行的效率只取決于所處理的數據量D、以上都不正確標準答案:A知識點解析:影響程序執(zhí)行效率的因素有很多,如數據的存儲結構、程序處理的數據量、程序的算法等。順序存儲結構和鏈式存儲結構在數據插入和刪除操作上的效率就存在差別。其中,鏈式存儲結構的效率要高一些。5、下列對于軟件測試的描述中正確的是A、軟件測試的目的是證明程序是否正確B、軟件測試的目的是使程序運行結果正確C、軟件測試的目的是盡可能多地發(fā)現程序中的錯誤D、軟件測試的目的是使程序符合結構化原則標準答案:C知識點解析:軟件測試是為了發(fā)現錯誤而執(zhí)行程序的過程。一個好的測試用例是指很可能找到迄今為止尚未發(fā)現的錯誤的用例:一個成功的測試是發(fā)現了至今尚未發(fā)現的錯誤的測試。軟件測試的目的要以查找錯誤為中心,而不是為了演示軟件的正確功能。6、在下列模式中,能夠給出數據庫物理存儲結構與物理存取方法的是A、外模式B、內模式C、概念模式D、邏輯模式標準答案:B知識點解析:數據庫有三層模式結構,邏輯模式是數據的全局邏輯結構的描述,外模式也稱為子模式,是局部數據的邏輯結構描述,而內模式也稱為存儲模式,是數據庫物理存儲結構和存取方法的描述。7、下列敘述中正確的是()。A、MsgBox語句的返回值是一個整數B、執(zhí)行MsgBox語句并出現信息框后,不用關閉信息框即可執(zhí)行其他操作C、MsgBox語句的第一個參數不能省略D、如果省略MsgBox語句的第三個參數(Title),則信息框的標題為空標準答案:C知識點解析:Msgbox語句的功能:顯示消息提示框,在對話框中顯示提示消息,等待用戶單擊按鈕,單擊不同的按鈕返回不同的整數。它有2種形式:①MsgB0x函數格式:變量=MsgBox(<提示內容>[,樣式][,標題]),注意MsgBox函數帶括號,有返回值。②MsgBox語句格式:MsgBox(<提示內容>[,樣式][,標題]),有無括號都可以,無返回值。故A選項錯誤。其中:第1個參數:提示內容是必需的,不能省略。故C選項正確。第2個參數:可選。整型表達式,默認值為0,指定信息框中按鈕數目、類型、圖標類型和默認按鈕等。第3個參數:可選,如果省略,則標題欄并不為空默認顯示它所屬的工程名。故D選項錯誤。執(zhí)行MsgBox語句時出現信息框后,必須關閉信息框才可執(zhí)行其他操作。故B選項錯誤。8、設窗體上有一個列表框控件List1,含有若干列表項。以下能表示當前被選中的列表項內容的是()。A、List1.ListB、List1.ListIndexC、List1.TextD、List1.Index標準答案:C知識點解析:List1的List屬性是設置或返回列表框中的列表項內容;ListIndex屬性設置或返回當前選中的列表項的索引值;Index屬性是用來區(qū)分列表框控件數組中各List控件;Text屬性設置或返回當前所選中列表項的文本內容。故選C。9、下列關于控件數組的敘述中,正確的是()。A、控件數組可以由不同類型的控件組成B、控件數組元素的最小下標值為1C、在設計階段,可以改變控件數組元素的Index屬性值D、控件數組的名字由Caption屬性指定標準答案:C知識點解析:控件數組必須用同類型的控件組成,最小下標為0,控件數組的名字由Name屬性指定。選C)。10、窗體上有一個名稱為HScroll1的滾動條,程序運行后,當單擊滾動條兩端的箭頭時,立即在窗體上顯示滾動框的位置(即刻度值)。下面能夠實現上述操作的事件過程是A、PrivateSubHScroll1_Change()PrintHScrolll.ValueEndSubB、PrivateSubHScroll1_Change()PrintHScroll1.SmallChangeEndSubC、PrivateSubHScroll1_Scroll()PrintHScroll1.ValueEndSubD、PrivateSubHScroll1_Scroll()PrintHScroll1.SmallChangeEndSub標準答案:A知識點解析:本題考查的考點是有關滾動條的屬性和事件的。單擊滾動條的箭頭時將觸發(fā)Change事件,而滾動塊的位置由Value屬性返回。11、設變量x中的值是395,則下面語句的輸出是Printx\100+((xMod100)\10)*10+(xMod10)*100A、935B、395C、539D、593標準答案:D知識點解析:本題中使用了兩種運算:整除運算“\”和求余運算“Mod”。最終輸出的是3+90+500=593。12、用來設置文字字體是否為粗體的屬性是A、FontItalicB、FontUnderlineC、FontSizeD、FontBold標準答案:D知識點解析:許多控件都具有一組Font屬性,如FontName表示字體名稱,FontSize代表字號,FontBoid代表加粗,FontItalic代表傾斜,FontUnderline代表下劃線等。13、以下關于命令按鈕的敘述中正確的是A、命令按鈕上可以顯示圖片B、命令按鈕能夠分別響應單擊、雙擊事件C、程序運行時,不能改變命令按鈕上的文字D、若命令按鈕的Cancel屬性設為True,焦點在其他控件上時,按下回車鍵與單擊該按鈕的效果相同標準答案:A知識點解析:命令按鈕的Picture屬性用來設置命令按鈕上顯示的圖片:命令按鈕只能響應單擊事件而不能響應雙擊事件;程序運行時可以通過改變按鈕的Caption屬性值來改變命令按鈕上的文字:Cancel屬性用來設置窗體的“取消”按鈕,程序運行時,按下鍵將執(zhí)行該命令按鈕的單擊事件過程,Default屬性用于設置窗體的缺省命令按鈕,程序運行時,按下鍵將執(zhí)行該命令按鈕的單擊事件過程。14、在窗體上畫一個名稱為Command1的命令按鈕,并編寫如下程序:PrivateTypeRecordIDAsIntegerNameAsString*20EndTypePrivateSubCommand1_Click()DimMaxSize,NextChar,MyCharOpen"d:\temp\female.txt"ForInputAs#1MaxSize=LOF(1)ForNextChar=MaxSizeTo1Step-1MyChar=Input(1,#1)NextNextCharPrintEOF(1)Close#1EndSub運行程序,單擊命令按鈕,其輸出結果為()。A、TrueB、FalseC、0D、Null標準答案:A知識點解析:程序中以順序輸入方式打開d:\temp\female.txt文件。LOF函數取得打開文件的長度。EOF函數用來測試文件的結束狀態(tài)。根據文件長度值,利用Input函數逐一取出文件中的字符,每讀取一個字符,文件指針自動下移,指向下一個字符。當執(zhí)行最后一次循環(huán)時,Input函數讀取了最后一個字符,文件指針再向下移動就會指向文件的結尾。因此當EOF函數測試文件結束狀態(tài)時,就會返回True。對于邏輯值,Print語句會直接輸出True。因此答案為A。15、設有如下聲明語句OptionBase1Dimarr(2,-1To5)AsInteger則數組arr中數組元素的個數是A、10B、12C、14D、21標準答案:C知識點解析:二維數組定義時對于數組的每一維均給定下標的下界和上界,中間用To連接,即給出下標可取值的變化范圍?!皵到M元素個數”指的是數組中成員的個數,每一維的長度是上界.下界+1,默認下界是0,數組元素個數等于各維長度之積。16、窗體上有1個名稱為Text1的文本框;1個名稱為Timerl的計時器控件,其Interval屬性值為5000,Enabled屬性值是True。Timer1的事件過程如下:PrivateSubTimerl_Timer()StaticflagAsIntegerIfflag=0Thenflag=1:flag=-flagEndIfIfflag=1ThenText1.ForeColor=&HFF&’&HFF&為紅色ElseText1.ForeColor=&HC000&’&HC000A、每次執(zhí)行此事件過程時,flag的初始值均為0B、flag的值只可能取0或1C、程序執(zhí)行后,文本框中的文字每5秒改變一次顏色D、程序有邏輯錯誤,Else分支總也不能被執(zhí)行標準答案:C知識點解析:計時器控件(Timer)用來完成有規(guī)律性時間間隔執(zhí)行的任務,Interval屬性用于設置計時器事件之間的間隔,以毫秒為單位。本題在每5秒執(zhí)行一次的Timer事件過程中,通過靜態(tài)變量flag值的交替變換(即-1和l之間)來控制文本框中文字的顏色,值為一1時為綠色,值為1時為紅色。除程序剛啟動第一次執(zhí)行Timer事件過程時,靜態(tài)變量flag的初始值為0外,其余各次均為-1或1。17、窗體上有一個名稱為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以下關于上述程序的敘述中,正確的是A、s是去掉文本框中字符串末尾的空格B、SelectCasec有誤,Case后應該是一個表達式C、各Case分支條件有誤,不能用To表示字符的取值區(qū)間D、x4是字符串中非字母、非數字字符的個數標準答案:D知識點解析:Trim函數的作用是去掉文本框中字符串兩端的空格;多分支控制結構又稱為SelectCase語句或Case語句,可以同時對條件的多個取值來判斷,Case后面的表達式可采用3種形式:①表達式1[,表達式2]…;②表達式1To表達式2;③Is關系運算表達式。最終x1是字符串中數字的個數;x2是字符串中大寫字母的個數;x3是字符串中小寫字母的個數;x4是字符串中非字母、非數字字符的個數。18、以下關于多重窗體程序的敘述中,錯誤的是A、對于多重窗體程序,需要單獨保存每個窗體B、在多重窗體程序中,可以根據需要指定啟動窗體C、在多重窗體程序中,各窗體的菜單是彼此獨立的D、用Hide方法不僅可以隱藏窗體,而且還可以清除內存中的窗體標準答案:D知識點解析:包含多個窗體的程序稱為多重窗體程序(MutilForm)。多重窗體是單一窗體的集合,每個窗體獨立保存,各窗體之間的控件、菜單等對象都是相互獨立的。對于多重窗體程序,必須指定其中某一個窗體為啟動窗體,如果未指定,設計時的第一個窗體默認為啟動窗體。只有啟動窗體才能在運行程序時自動顯示出來,其他窗體必須通過Load及Show方法才能看到,使用Hide方法使窗體隱藏,即不在屏幕上顯示,但仍在內存中。19、在窗體上畫一個命令按鈕和一個標簽,其名稱分別為Commandl和Labell,然后編寫如下事件過程:PrivateSubCommandl_Click()Dimarr(10)Fori=6To10arr(i)=i一5NextiLabell.Caption=art(0)+art(arr(10)/arr(6))EndSub運行程序,單擊命令按鈕,則在標簽中顯示的是A、0B、1C、2D、3標準答案:A知識點解析:在本題的循環(huán)中分別將arr(6)到arr(10)的數組元素賦值為1~5,而arr(0)到arr(5)~數組元素沒有被賦值,將保留默認初值0,即最后標簽上顯示的是art(0)+arr(5)=0。20、下面關于文件敘述中錯誤的是A、VB數據文件需要先打開,再進行處理B、隨機文件每個記錄的長度是固定的C、不論是順序文件還是隨機文件,都是數據文件D、順序文件的記錄是順序存放的,可以按記錄號直接訪問某個記錄標準答案:D知識點解析:VB數據文件需要先打開,再進行處理,文件分為兩類:順序文件和隨機文件。順序文件的記錄是順序存放的,只能從頭到尾逐記錄訪問,每個記錄的長度是不定的;隨機文件每個記錄的長度是固定的,可以實現隨機訪問。21、設窗體上有1個名稱為HScroll1的水平滾動條,其Max、Min屬性分別設置為100、1;有2個名稱分別為Option1、Option2的單選按鈕,其標題分別為“30”、“50”;還有下面程序代碼:PrivateSubOption1_Click()HScroll1=Val(Option1.Caption)EndSubPrivateSubOption2_Click()HScroll1=Val(Option2.Caption)EndSub程序運行時,單擊Option2單選按鈕,則滾動條上滾動框的位置是A、在最左邊B、在最右邊C、在中間D、在中間偏左的位置標準答案:C知識點解析:滾動條通常用來幫助觀察數據或確定位置,也可用來作為數據輸入的工具。其Max屬性用于設置或返回滾動條所能表示的最大值,Min屬性用于設置或返回滾動條所能表示的最小值。滾動塊向右移動時,其Value屬性值增加。Option2單選按鈕的單擊事件中,將把Option2的標題即50賦值給滾動條的Value屬性,使?jié)L動框位于正中間。22、下列關于利用通用對話框產生的文件對話框的相關屬性的描述中,錯誤的是A、InitDir屬性用于設置對話框中顯示的起始目錄B、Filter屬性用于設置對話框默認的過濾器C、DefaultExt屬性用于設置對話框中默認的文件類型D、FileTitle屬性用于存放對話框中所選擇的文件名標準答案:B知識點解析:通用對話框(CommonDialog)是可提供諸如打開文件、保存文件、設置打印選項、選擇顏色和字體、顯示幫助等操作的一組標準對話框。打開(opcn)和保存(Save)文件對話框有共同的主要屬性,若沒有指定InitDir屬性值,則起始目錄為當前目錄:FileName屬性返回或設置所選文件的路徑和文件名;Filter屬性是過濾器,返回或設置在對話框的類型列表框中所顯示的文件類型,例如,過濾器為*.txt,表示顯示所有的文本文件,語法為:通用對話框名.Fincr=“描述|文件擴展名”,使用管道符(I)將描述與過23、在窗體上畫一個組合框,其名稱為Combol,然后編寫如下事件過程:PrivateSubForm_Load()Combo1.Text=”1”Fori=1To10Sum=Sum+iNextiCombo1.Text=SumEndSub程序運行后,輸出結果為A、在組合框的編輯區(qū)中顯示1B、在組合框的編輯區(qū)中顯示不定值C、在組合框的編輯區(qū)中顯示55D、出錯信息標準答案:C知識點解析:組合框的Text屬性將會返回或者設置編輯區(qū)中的文本,本題中顯示的是1~10的累加和55。24、窗體上有一個名稱為commandl的命令按鈕,單擊該按鈕時所實現的功能是產生10個隨機整數,然后從鍵盤輸入一個整數,查找該數在數組中的位置。若找到,輸出該數的位置;若沒有找到,給出相應的提示。該命令按鈕的單擊事件過程如下:PrivateSubCommandl_Click()Dima(10)AsInteger,xAsIntegerFori=1To10a(i)=Int(Rnd*100)Nextx=InputBox(”輸入100以內的整數:”):P=0Fori=1To10Ifa(i)=xThenp=i:ExitForEndIfNextIfp=0ThenPrint”沒有找到與輸入數據相同的數!”ElsePrintStr(x)+”在數組中的位置是”+Str(p)EndIfEndSub對于上述事件過程,以下敘述中正確的是A、本程序實際產生的隨機數是0.99B、若產生的隨機數中有相同數,則P是其中最后一個數的位置C、程序有錯,P的初值設置不對D、程序有錯,InputBox函數產生的數據與x的類型不匹配標準答案:A知識點解析:隨機數函數Rnd的功能是用于產生一個小于1但大于或等于0的隨機數。為了生成某個指定范圍內的隨機整數,可使用以下公式:Int((upperbound-10werbound+1)*Rnd+lowerbound),其中upperbound是隨機整數范圍的上限,lowerbound是隨機整數范圍的下限。本題中upperbotmd為99,lowerbound為0。25、設有如下程序:OptionBase1Dima(3,4)AsInteger,b(4,3)AsIntegerPrivateSubCommand1_Click()’循環(huán)1Fori=1To3Forj=1To4b(j,i)=a(i,j)NextjNexti’循環(huán)2x=b(1,1)Fori=1To4Forj=1To3Printb(i,j);Ifx<b(i,J)Thenx=b(i,j)NextjPrintNextiEndSub程序中的數組a已被賦值。以下關于上述程序的敘述中,正確的是A、窗體模塊中,不能使用Dim聲明a、b數組B、“循環(huán)1”可以正常運行C、“循環(huán)2”中循環(huán)變量i、j的終值不對,所以不能正常運行D、程序可以正常運行,x中保存的是數組b中所有元素中最小的數標準答案:B知識點解析:在窗體模塊中使用Dim聲明模塊接變量,也可以聲明模塊級數組;在循環(huán)1中i從1到3,j從1到4,無論是訪問b(j,i)還是a(i,j)均在數組的范圍內,可以正常運行;在循環(huán)2中b(i,i)的值也在數組范圍內,循環(huán)可以正常運行;最后x里面保存的是數組中最大的數。國家二級VB機試(選擇題)模擬試卷第2套一、選擇題(本題共25題,每題1.0分,共25分。)1、下面關于標準模塊的敘述中錯誤的是A、標準模塊中可以聲明全局變量B、標準模塊中可以包含一個SubMain過程,但此過程不能被設置為啟動過程C、標準模塊中可以包含一些Public過程D、一個工程中可以含有多個標準模塊標準答案:B知識點解析:標準模塊是只含有程序代碼的應用程序文件,是應用程序內其它模塊可訪問的過程和聲明的容器,它們可以包含變量、常數、類型、外部過程和全局過程的全局(在整個應用程序范圍內有效的)聲明或模塊級聲明,它由3部分組成:①全局變量聲明;②模塊層聲明;⑧通用過程。一個工程中可以包含多個標準模塊,在標準模塊中可以包含一個SubMain過程,此過程可以被設為啟動過程。2、長整型常數的類型說明符為()。A、%B、#C、&D、@標準答案:C知識點解析:%:整型,#:雙精度實型,&:長整型,@:貨幣型。3、為了把命令按鈕設置為圖形格式,其Style屬性值應為A、TrueB、FALSEC、1D、0標準答案:C知識點解析:命令按鈕的Style屬性用來設置命令按鈕的外觀,可設置成以下兩種形式,值為Standard,按鈕以標準的形式顯示,即文字形式,為默認值:值為Graohical,按鈕將以圖形的方式顯示。4、以下控件中,能顯示滾動條的是A、文本框B、形狀C、標簽D、圖片框標準答案:A知識點解析:不能顯示滾動條的控件有形狀、標簽和圖片框。選A。5、設窗體文件中有下面的事件過程:PrivateSubCommandl__Click()Dimsa%=100PrintaEndSub其中變量a和s的數據類型分別是A、整型,整型B、變體型,變體型C、整型,變體型D、變體型,整型標準答案:C知識點解析:在VB中,可以顯式聲明變量和隱式聲明變量。如果使用Dim、Public、Static等關鍵字來聲明變量,則為顯式聲明,此時如果不指定變量的類型,則該變量為變體型變量;如果不使用關鍵字聲明變量而直接使用,視為隱式聲明,此時變量的類型可以使用類型符號來規(guī)定,也可以默認為變體型。本題中的變量a就是使用%來隱式聲明,其類型為整型。6、設窗體上有3個圖像框:Image1、Image2、Image3,并有下面的程序代碼:PrivateSubFormLoad()Image1.Picture=LoadPicture("LEAF.bmp")Image2.Picture=LoadPicture("OPEN.bmp")Image3.Visible=FalseEndSubPrivateSubImage1_Click()Image2.Picture=Image1.PictureEndSubPrivateSubImage2Click()Image3.Picture=Image2.PictureImage2.Picture=Image1,PictureImage1.Picture=Image3.PictureEndSub在程序運行期間單擊Image2,則在窗體上看到的結果是A、在Image3中顯示Image2中的圖片B、Image1、Image2中原有圖片被交換了C、Image1、Image2中都是原來Imegel中的圖片D、Image1、Image2中都是原來Imege2中的圖片標準答案:B知識點解析:本題中在窗體的Load事件中將Image3設置為不可見,然后在lmagel的單擊事件中將Image2中的圖片放到Image1中;在Image2的單擊事件中使用Image3作為中間控件完成了Image1、Image2中原有圖片的交換。7、如果在列表框List1中沒有選中項目,則List1.ListIndex的值為A、-1B、0C、1D、2標準答案:A知識點解析:列表框的ListIndex屬性用于返回或設置控件中當前選擇項目的索引(下標),設計時不可用。當ListIndex的值設置為-1時,表示未選定項目,第一項的索引值為0,最后一項的索引值為ListCount-1。8、編寫如下程序:PrivateSubCommandl_Click()DimmAsInteger,nAsIntegerm=2:n=1SelectCasemCase1SelectCasenCase1Print”AAA”Case2Print”BBB”Case2Print”CCC”EndSelectEndSub程序運行后,單擊命令按鈕Commandl,輸出結果為A、AAAB、BBBC、CCCD、1標準答案:C知識點解析:多分支控制結構又稱為SelectCase語句或Case語句,可以同時對條件的多個取值來判斷。本題是一個嵌套的SelectCase語句,首先判斷m的值,本題由于m的值為2,所以不會執(zhí)行Case1分支,直接執(zhí)行Case2分支輸出“CCC”9、下列有語法錯誤的賦值語句是A、y=7=9B、s=m+nC、Text1,Text=10D、m+n=12標準答案:D知識點解析:賦值語句可以把指定的值賦給一個變量或一個對象的某個屬性,其格式為[Let]目標操作符=源操作符。格式中的“源操作符”可以是變量、表達式、常量、對象屬性以及它們的組合,但目標操作符必須是單個的變量或者屬性。10、窗體上有一個名稱為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)給數組a元素賦初值,執(zhí)行完后a(1,1)=2,a(2,2)=4,a(3,3)=6,a(4,4)=8;Callf(a,B)語句調用子函數Subf(x()AsInteger,ByRefyAsInteger)。該函數內For循環(huán)把a數組中一維下標和二維下標相同的元素值相加。值為20,選D。11、以下敘述中錯誤的是A、用ReDim語句可以改變數組的維數B、用ReDim語句可以改變數組的類型C、用ReDim語句可以改變數組每一維的大小D、用ReDim語句可以對數組中的所有元素置0或空字符串標準答案:B知識點解析:VisualBasic中有兩種類型的數組:固定大小的數組及動態(tài)數組。固定大小的數組總是保持同樣的大小,而動態(tài)數組在運行時可以改變大小。要使用動態(tài)數組可先聲明一個不指明大小的空數組(即沒有維數下標),然后再用ReDim語句在過程中改變數組大小和類型,對于多維數組,無法改變維數,只能改變最后一維的大小。12、窗體上有1個名稱為Labell的標簽;1個名稱為Listl,且含有若干表項的列表框。為了使得單擊Listl中某個表項時,在Labell中相應地顯示該表項,應使用的程序代碼為A、PrivateSubLiktl—Click()Labell.Caption=Listl.IndexEndSubB、PrivateSubListl—Click()Labell.Caption=Listl.ListCOuntEndSubC、PrivateSubListl—Click()Labell.Caption=Listl.TextEndSubD、PrivateSubListlClick()Labell.Caption=Listl.SelectedEndSub標準答案:C知識點解析:標簽控件(Label)常用于顯示用戶不能直接改變的信息,其C印tion屬性用來設置其顯示的文本。列表框的Text屬性用于返回列表框中選擇的項目的內容,返回值總與列表框的List(ListIndex)屬性的返回值相同,而列表框的ListIndex屬性只返回當前選擇的項目的索引號。13、列表框中的項目保存在一個數組中,這個數組的名字是A、ColumnB、StyleC、ListD、MultiSelect標準答案:C知識點解析:本題考查列表框的使用。列表框的元素保存在List數組中,可以通過List屬性獲取元素值。14、窗體上有Command1、Command2兩個命令按鈕。現編寫以下程序:OptionBase0Dima()AsInteger,mAsIntegerPrivateSubCommand1_Click()m=InputBox("請輸入一個正整數")ReDima(m)EndSubPrivateSubCommand2Click()m=InputBox("請輸入一個正整數")ReDima(m)EndSub運行程序時,單擊Command1后輸入整數10,再單擊Command2后輸入整數5,則數組a中元素的個數是A、5B、6C、10D、11標準答案:B知識點解析:本題考查的考點是有關動態(tài)數組的。動態(tài)數組以變量作為下標值,在程序運行過程中完成定義,通常分為兩步:首先在窗體層、標準模塊或過程中用Dim或Public聲明一個沒有下標的數組(括號不能省略),然后在過程中隨時用ReDim語句可以重定義變量作為下標的數組,重定義后原數組的所有元素值被清空。本題中由于數組下標從0開始,所以單擊Command1后輸入10,數組被重定義成了11個元素;然后單擊Command2輸入5,數組又被重定義成了6個元素,所以最后數組中有6個元素。15、以下關于控件數組的敘述中,正確的是A、數組中各個控件具有相同的名稱B、數組中可包含不同類型的控件C、數組中各個控件具有相同的Index屬性值D、數組元素不同,可以響應的事件也不同標準答案:A知識點解析:控件數組是一組具有共同名稱和共同類型的控件,它們擁有共同的事件,數組中的每個控件都有惟一的索引號(Index),即下標。16、數學式y(tǒng)2>x>=10在VB中應表示為A、y/y>xAnd10<=xB、Sqr(y)>xAndx>=10C、Sqr(y)>xOrx<=10D、y*y>xOrx>=10標準答案:A知識點解析:Sgn函數為求平方根函數,為了表達x既小于y的平方又大于等于10,兩個表達式之間應該使用And聯(lián)接。17、窗體上有名稱為Commandl的命令按鈕和名稱為Textl的文本框PrivateSubCommandl_Click()Textl.Text="程序設計"Textl.SetFocusEndSubPrivateSubTextl_GotFocus0Textl.Text="等級考試"EndSub運行以上程序,單擊命令按鈕后A、文本框中顯示的是“程序設計”,且焦點在文本框中B、文本框中顯示的是“等級考試”,且焦點在文本框中C、文本框中顯示的是“程序設計”,且焦點在命令按鈕上D、文本框中顯示的是“等級考試”,且焦點在命令按鈕上標準答案:B知識點解析:SetFocus方法用于將焦點移到指定的對象上,而當一個對象獲得焦點時將觸發(fā)其GotFocus事件過程。18、以下敘述中錯誤的是A、SubMain是定義在標準模塊中的特定過程B、一個工程中只能有一個SubMain過程C、SubMain過程不能有返回值D、當工程中含有SubMain過程時,工程執(zhí)行時一定最先執(zhí)行該過程標準答案:D知識點解析:在VisualBasic中,可以將多窗體程序中的其中一個窗體或某標準模塊中的SubMain過程設置為啟動對象。SubMain是定義在標準模塊中的特定過程,該過程不能有返回值,一個工程中僅能有一個SubMain過程。19、窗體上有一個名稱為Commandl的命令按鈕,并有如下程序代碼:PrivateSubCommand1—Click()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中調用過程時,參數有兩種傳遞形式:按值傳遞(Byval)和按址傳遞(Byref),默認為按址傳遞。其中,當參數按址傳遞時,如果在引用該參數的過程中改變了形參的值,同時也就改變了傳遞參數時實參變量的值。本題中f的參數x是按值傳遞的,y和z是按地址傳遞的,因此在f中對x的改變不會影響謇參a,對y和z的操作會影響實參b和c。20、設有下面程序代碼:OptionBase1PrivateSubCommandl_Click()Dimx(6)a=Array(4,2,5,1,6,3)b=Array(64,24,98,27,58,41)Fork=1To6x(a(k))=b(k)NextkFork=1To6Printx(k):NextkEndSub程序運行時的輸出是A、272441649858B、642498275841C、242741586498D、986458412724標準答案:A知識點解析:本題是一個簡單的數組賦值,只要把握好每次為哪個元素賦以什么樣的值就不會出錯。最后x數組中存放的數據依次是27、24、41、64、98、58。21、設有下面的語句:PrintIIffx>0,1,Ilf(x<0,-1,0))與此語句輸出結果不同的程序段是A、Ifx>0Thenx=1Elselfx<0Thenx=-1EndIfPrintxB、Ifx>0ThenPrint1Elselfx<0ThenPrint-1ElsePrint0EndIfC、SelectCasexCaseIs>0Print1CaseIs<0Print-1CaseElsePrint0EndSelectD、Ifx<>0ThenIfx>0ThenPrint1Elselfx<0ThenPrint-1ElsePrint0EndIfEndIf標準答案:D知識點解析:IIf函數可用來執(zhí)行簡單的條件判斷操作,它是“If…then…Else”結構的簡寫版本。格式為:Result=IIf(<條件>,,)。當<條件>為真時,IIf函數返回,而當<條件>為假時,返回。本題中IIf函數的功能是判斷x是不是正數,如果是返回1,否則繼續(xù)判斷a是不是負數,如果是返回一1,否則返回0,即返回x的符號。分析4個選項只有D選項不應該使用ElseIf語句而應該使用Else語句。22、以下敘述中,錯誤的是A、標準模塊不屬于任何一個窗體B、工程文件的擴展名為.vbgC、窗體文件的擴展名為.frmD、一個應用程序可以有多個窗體標準答案:B知識點解析:標準模塊是只含有程序代碼的應用程序文件,不屬于任何一個窗體,其擴展名為.bas;窗體文件中含有控件和程序代碼,其擴展名為.frm;類模塊文件的擴展名為.cls;工程文件的擴展名為.vbp,在一個工程中含有多個窗體文件和標準模塊文件;工程組文件的擴展名是.vbg,一個工程組文件中可以含有若干工程,一個工程中可以有若干窗體和標準模塊。23、文本框Textl的KeyDown事件過程如下:PrivateSubTextl—KeyDown(KeyCodeAsInteger,ShiftAsInteger)…EndSub其中參數KeyCode的值表示的是發(fā)生此事件時A、是否按下了Alt鍵或Ctrl鍵B、按下的是哪個數字鍵C、所按的鍵盤鍵的鍵碼D、按下的是哪個鼠標鍵標準答案:C知識點解析:本題考查的考點是有關鍵盤事件KeyDown的。KeyCode參數是表示所按鍵的位置信息的代碼。24、窗體上有名稱為Commandl的命令按鈕和名稱為Textl的文本框PrivateSubCommand1_Click()Textl.Text=”程序設計”Text1.SetFocusEndSubPrivateSubText1_GotFocus()Textl.Text=”等級考試”EndSub運行以上程序,單擊命令按鈕后A、文本框中顯示的是“程序設計”,且焦點在文本框中B、文本框中顯示的是“等級考試”,且焦點在文本框中C、文本框中顯示的是“程序設計”,且焦點在命令按鈕上D、文本框中顯示的是“等級考試”,且焦點在命令按鈕上標準答案:B知識點解析:SetFocus方法用于將焦點移到指定的對象上,而當一個對象獲得焦點時將觸發(fā)其GotFocus事件過程。25、編寫如下程序:PrivateSubCommandl_Click()DimxAsInteger,yAsIntegerx=1:y=1Doy=x*yIfy>10ThenExitDoElsex=x+3EndIfLoopUntilx<=10Printx;yEndSub程序運行后,單擊命令按鈕Commandl,輸出結果為A、l1B、41C、42D、728標準答案:B知識點解析:Do型循環(huán)結構,首先看條件判斷在循環(huán)體的前面還是后面,如果是先判斷條件,則有可能一次也不執(zhí)行循環(huán)體;如果是后判斷條件,則無論條件是什么,至少執(zhí)行一次循環(huán)體。在Until循環(huán)中條件為False時執(zhí)行循環(huán)體,條件為True時退出循環(huán);在While循環(huán)中條件為True時執(zhí)行循環(huán)體,條件為False時退出循環(huán)。本題中使用的是后判斷型循環(huán),第一次循環(huán)時y的值為1,不滿足y>10,執(zhí)行Else分支,x變成4,此時由于滿足x<=10所以結束循環(huán)。國家二級VB機試(選擇題)模擬試卷第3套一、選擇題(本題共25題,每題1.0分,共25分。)1、下列關于棧的敘述中,正確的是A、棧底元素一定是最后入棧的元素B、棧頂元素一定是最先入棧的元素C、棧操作遵循先進后出的原則D、以上三種說法都不對標準答案:C知識點解析:棧是限定只能在表的一端進行插入和刪除操作的線性表,必須按“后進先出”的規(guī)則操作元素。2、在窗體上添加“控件”的正確的操作方式是A、先單擊工具箱中的控件圖標,再單擊窗體上適當位置B、先單擊工具箱中的控件圖標,再雙擊窗體上適當位置C、直接雙擊工具箱中的控件圖標,該控件將出現在窗體上D、直接將工具箱中的控件圖標拖動到窗體上適當位置標準答案:C知識點解析:在窗體上畫一個控件有以下兩種方法。第1種方法步驟如下:步驟1:單擊工具箱中的控件,該控件的圖標反相顯示。步驟2:把光標移到窗體的適當位置,此時光標變?yōu)椤?”號,按下鼠標左鍵,不松開,并向右下方拖動鼠標,窗體上顯示出一個方框,如圖3.7所示。步驟3:鼠標向右下方移動,所畫的方框逐漸增大,當增大到認為合適的大小時,松開鼠標左鍵,這樣就在窗體上畫好了一個控件。第2種方法比較簡單:雙擊工具箱中某個所需要的控件圖標即可。3、以下不合法的VB變量名是A、filenameB、readC、_yD、e5標準答案:C知識點解析:變量是用一個名稱來表示的,給變量命名時應遵循規(guī)則:名稱只能由字母、數字和下劃線組成;名稱的第一個字符必須是英文字母,最后一個字符可以是類型說明符;名稱的有效字符為255個;不能用VB的保留字作變量名,但變量名中可以包含保留字,如ConstA;變量名也不能是末尾帶有類型說明符的保留字,如Dim!是不合法的變量名:不區(qū)分字母的大小寫。4、下面不屬于軟件測試實施步驟的是A、集成測試B、回歸測試C、確認測試D、單元測試標準答案:B知識點解析:軟件測試實施的步驟有單元測試、集成測試和確認測試。5、下面關于菜單的敘述中正確的是A、彈出式菜單和下拉式菜單都可用菜單編輯器編輯B、彈出式菜單不能有子菜單C、菜單項可以響應Click事件和DblClick事件D、有子菜單的菜單項不響應Click事件標準答案:A知識點解析:彈出式菜單也可以有子菜單,選項B錯誤;每一個菜單包括主菜單和子菜單都相當于一個命令按鈕,單擊菜單項即觸發(fā)該菜單項的Click事件過程,選項C、D錯誤。故正確答案為選項A。6、假定有如下的程序段:DimintVarAsIntegerintvar=TruePrintintVar則輸出結果是A、0B、一1C、TrueD、False標準答案:B知識點解析:VB中的邏輯值True和False在參與關系運算時會自動進行類型轉換,其中True轉換為-1,False轉換為0。7、窗體j:有個名稱為VScrolll的垂商滾動條,為了設定單出滾動條兩端箭頭時的Value增量值,麻設置的屬性是A、LargeChangeB、SmallChangeC、MaxD、Min標準答案:B知識點解析:滾動條通常用來幫助觀察數據或確定位置,也可用來作為數據輸入的工具。其Max屬性用于設置或返回滾動條所能表示的最大值,Min屬性用于設置或返回滾動條所能表示的最小值。LargeChange屬性用于設置或返回單擊滾動條中滾動框前面或后面的部位時,Value屬性增加或減小的增量值;SmallChange屬性用于設置或返回單擊滾動條兩端的箭頭時,Value屬性增加或減小的增量值。8、在窗體上畫一個名稱為File1的文件列表框,并編寫如下程序:PrivateSubFile1_Db1Click()x=Shell(File1.FileName,1)EndSub以下關于該程序的敘述中,錯誤的是A、x沒有實際作用,因此可以將該語句寫成CallShell(File1.FileName1、)B、雙擊文件列表框中的文件,將觸發(fā)該事件過程C、要執(zhí)行的文件的名字通過File1.FileName指定D、File1中顯示的是的當前驅動器、當前目錄下的文件標準答案:A知識點解析:本題考查常用內部函數,Shell函數的功能是執(zhí)行一個可執(zhí)行文件,返回一個Variant(Double),如果成功的話,代表這個程序的任務ID,若不成功,則會返回0,選項A)錯誤,x獲取Shell函數返回值;選項B)、C)和D)均正確。9、在窗體上畫一個列表框和一個命令按鈕,其名稱分別為list1和Commandl,然后編寫如下事件過程:PrivateSubForm_load()List1.Addltem"Iteml":List1.Addltem"Item2":List1.Addltem"Item3"EndSUbPrivateSubCommandl_Click()List1.List(List1.ListCount)="AAAA"EndSub程序運行后,單擊命令按鈕,其結果為A、把字符串“AAAA”添加到列表框中,但位置不能確定B、把字符串“AAAA”添加到列表框的最后(即“Item3”的后面)C、把列表框原有的最后一項改為“AAAA”D、把字符串“AAAA”插入到列表框的最前面(即“Item1”的前面)標準答案:B知識點解析:本題考查控件的屬性和方法。在窗體的Load事件代碼里面,使用列表框的Addltem方法為List1列表框增加三項:在命令按鈕的Click事件代碼里面,此時列表框List1的listCount屬性為3。因此List1,List(List1.ListCount)="AAAA"實際是List1.List(3)="AAAA",即向列表框的最后添加一項。10、下面程序的執(zhí)行結果是PrivateSubCommand1_Click()a=0k=1DoWhilek<4x=k^k^a:k=k+1Printx:LoopEndSubA、1427B、11C、149D、000標準答案:B知識點解析:本題是一個簡單的Do循環(huán),共循環(huán)3次,每次都輸出k^k^a;因為a的值始終不變均為0,所以無論k取何值,0次冪的結果都為1。11、在窗體上畫一個組合框,其名稱為Combol,然后編寫如下事件過程:PrivateSubForm_Load()Combol.Text="1"Fori=1To10Sum=Sum+iNextiCombol.Text=SumEndSub程序運行后,輸出結果為A、在組合框的編輯區(qū)中顯示1B、在組合框的編輯區(qū)中顯示不定值C、在組合框的編輯區(qū)中顯示55D、出錯信息標準答案:C知識點解析:組合框的Text屬性將會返回或者設置編輯區(qū)中的文本,本題中顯示的是1~10的累加和55。12、在窗體上畫兩個文本框(名稱分別為Textl和Text2)和一個命令按鈕(名稱為Commandl),然后編寫如下事件過程:PrivateSubCommandl_Click()x=0DoWhilex<50x=(x+2)*(x+3):n=n+1LoopTextl.Text=Str(n):Text2.Text=Str(x)EndSub程序運行后,單擊命令按鈕,在兩個文本框中顯示的值分別為A、1和0B、2和72C、3和50D、4和168標準答案:B知識點解析:本題考查的考點是有關Do型循環(huán)的。對于這種循環(huán)結構,首先看條件判斷在循環(huán)體的前面還是后面,如果是先判斷條件,則有可能一次也不執(zhí)行循環(huán)體;如果是后判斷條件,則無論條件是什么,至少執(zhí)行一次循環(huán)體。在Until循環(huán)中條件為False時執(zhí)行循環(huán)體,條件為True時退出循環(huán);在While循環(huán)中條件為True時執(zhí)行循環(huán)體,條件為False時退出循環(huán),這一點要注意區(qū)分清楚。本題只需要實際計算一下兩次循環(huán)中x和n值的變化即可容易的得出結果。13、運行如下程序PrivateSubCommandl_Click()Dima(5,5)AsIntegerFori=1To5Forj=1To4a(i,j)=i*2+jIfa(i,j)/7=a(i,j)\7Thenn=n+1EndIfNextjNextPrintnEndSub則n的值是A、2B、3C、4D、5標準答案:B知識點解析:在二重循環(huán)中為二維數組賦初值,每個元素的值均為行號*2加上列號;在If語句中進行判斷,如果數組元素能被7整除則令計數器n加1,所以整個程序的功能就是統(tǒng)計二維數組中能被7整除的數的個數。14、在VB中,函數過程與子程序過程的區(qū)別之一是A、函數過程必須有參數,而子程序過程可以沒有B、函數過程的參數傳遞只采用值傳遞,而子程序過程只采用地址傳遞C、在程序中,子程序過程調用的代碼可以寫在表達式中,而函數過程不能D、函數過程有返回值,而子程序過程沒有標準答案:D知識點解析:函數過程和Sub子過程一樣,也可以有參數也可以沒有參數;參數傳遞也可以使用地址傳遞也可以使用值傳遞;都是在代碼中進行調用,只是函數過程必須有一個返回值,子過程沒有。15、編寫如下程序:PrivateSubCommand1_Click()Dima(10)AsStrings="123456"n=Len(s)Fork=1Tona(k)=Mid(s,k,1)NextkFori=1Ton\2t=a(i)a(i)=a(n-i+1)a(n-i+1)=tNextiFork=1TonPrinta(k);NextkEndSub程序運行后,單擊命令按鈕Command1,輸出結果為A、654321B、123456C、654123D、123654標準答案:A知識點解析:本題中有個For循環(huán),但是這三個循環(huán)之間沒有嵌套關系,而是順序的關系。在第一個循環(huán)中依次取出字符串s中的每一個字符存入數組a:第二個循環(huán)中將數組的第一個元素平和最后一個元素互換,第二個元素和倒數第二:個元素互換……以此類推完成數組的逆序:第三個循環(huán)輸出數組元素。16、在窗體上畫一個名稱為Command1的命令按鈕,并編寫如下程序:FunctionFun(x)PrivateSubCommand1_Click()y=0n=InputBox("請輸入一個數")Ifx<10Thenn=Val(n)y=xP=Fun(n):PrintPElseEndSuby=y+10EndIfFun=yEndFunction運行程序,單擊命令按鈕,將顯示輸入對話框,如果在對話框中輸入100,并單擊“確定”按鈕,則輸出結果為A、10B、100C、110D、出錯信息標準答案:A知識點解析:本題是一個簡單的函數調用,在函數中會判斷參數x的值,根據x的值不同執(zhí)行If語句的不同分支。由于實際參數為100不滿足x<10,因此函數返回值為10。17、窗體上有一個名稱為Command1的命令按鈕,其單擊事件過程及相關的代碼如下:PrivateSubCommand1_Click()DimxAsInteger,yAsIntegerx=Val(InputBox("輸入整數"))y=Val(InputBox("輸入整數"))PrintStr(fun(x,y)+x+y)EndSubPrivateFunctionfun(ByRefmAsInteger,ByValnAsInteger)m=m*m:n=n+n:fun=m+nEndFunction運行程序,單擊命令按鈕時,出現輸入對話框,分別輸入3、5,則窗體上顯示的是A、27B、28C、33D、38標準答案:C知識點解析:在VisualBaSic中調用過程時,參數有兩種傳遞形式:按值傳遞(Byval)和按址傳遞(Byrcf),默認為按址傳遞。其中,當參數按址傳遞時,如果在引用該參數的過程中改變了形參的值,同時也就改變了傳遞參數時實參變量的值。本題中fun的參數m是按地址傳遞的,n是按值傳遞的,因此在f中對m的改變會影響實參x,對n的操作不會影響實參y,即輸出的是str(19+9+5)="33"。18、在窗體上畫一個名稱為Commandl的命令按鈕,并編寫如下程序:OptionBase1PrivateSubCommand1—Click()Dima(4,4)Fori=1To4Forj=1To4a(i,j)=(i-1)*3+jNextjNextiFori=3To4Forj=3To4Printa(i,i)NextjPrintNextiEndSub運行程序,單擊命令按鈕,則輸出結果為A、69710B、710811C、811912D、9121013標準答案:D知識點解析:本題中首先用一個二重循環(huán)為二維數組的每一個元素賦值,然后輸出二維數組的部分元素,即依次輸出a(3,3)、a(4,3)、a(3,4)、a(4,4)的值,根據二維數組元素的值,輸出分別為9、12、10、13。19、設有如下聲明語句OptionBase1Dimarr(2,-1To5)AsInteger則數組alT中數組元素的個數是A、10B、12C、14D、21標準答案:C知識點解析:二維數組定義時對于數組的每一維均給定下標的下界和上界,中間用T0連接,即給出下標可取值的變化范圍?!皵到M元素個數”指的是數組中成員的個數,每一維的長度是上界-下界+1,默認下界是0,數組元素個數等于各維長度之積。20、窗體上有一個名稱為Combol的組合框,一個名稱為Commandl的命令按鈕。要求編寫程序,在組合框中輸入一個字符串,當單擊命令按鈕時,將該字符串逐項與組合框中原有列表項進行比較,若有相同列表項,則將其刪除;若沒有相同列表項,則將其添加到組合框中。現有人編寫如下程序,以期實現上述功能:PrivateSubCommandl_Click()strl=Trim(Comb01.Text):flag=0Ifstrl<>""ThenFori=0ToCombo1.ListCount一1Ifstrl=Combo1.List(i)ThenCombo1.Removeltemi:Combo1.Text=””:flag=1EndIfNextIfflag=1ThenCombo1.AddItemCombo1.TextEndIfEndSub程序中存在問題,以下關于程序問題的敘述中,正確的是A、For循環(huán)的循環(huán)初值i應該從1開始B、語句Combo1.Removeltemi有錯誤C、語句Combo1.AddltemCombo1.Text有錯,Combo1.Text的內容已存在于組合框中D、應把程序倒數第3行中的Ifflag=1改為lfflag=0標準答案:D知識點解析:本題中首先用一個循環(huán)遍歷組合框的所有列表項,依次取出每一個列表項與strl進行比較,若相同則刪除該項,將flag置為1,否則flag為0:循環(huán)結束后如果flag的值為0則說明沒有任何一個現有的列表項與strl相同,需要將strl添加到組合框中,否則不需添加。21、在窗體上畫一個水平滾動條,其屬性值Min滿足A、增加一個SmallChange量B、減少一個SmallChange量C、增加一個LargeChange量D、減少一個LargeChange量標準答案:A知識點解析:滾動條通常用來幫助觀察數據或確定位置,也可用來作為數據輸入的工具。其。Max屬性用于設置或返回滾動條所能表示的最大值,Min屬性用于設置或返回滾動條所能表示的最小值。LargeChange屬性用于設置或返回單擊滾動條中滾動框前面或后面的部位時,Value屬性增加或減小的增量值;SmalIChange屬性用于設置或返回單擊滾動條兩端的箭頭時,Value屬性增加或減小的增量值。22、以下關于VB文件的敘述中,正確的是A、標準模塊文件的擴展名是.frmB、VB應用程序可以被編譯為.exe文件C、一個工程文件只能含有一個標準模塊文件D、類模塊文件的擴展名為.bas標準答案:B知識點解析:在VB中主要有標準模塊、類模塊和窗體模塊3種模塊。一個工程中可以有多個模塊文件,其中窗體文件的擴展名為frm,標準模塊文件擴展名為bas,類模塊文件擴展名為cls。23、假定有如下事件過程:PrivateSubFormClick()DimXAsInteger,nAsIntegerx=1:n=0DoWhilex<28x=x*3:n=n+1loopPrintx,nEndSub程序運行后,單擊窗體,輸出結果是A、814B、563C、281D、2435標準答案:A知識點解析:本題考查DoWhile循環(huán)。在窗體的Click事件代碼里面,定義了變量x和n,分析DoWhile循環(huán)可知,n保存循環(huán)次數,x是循環(huán)控制變量,如果x的值小于28則進入循環(huán)體,因此x和n的變化過程是:3和0、9和2、27和3、81和4,經過4次循環(huán)后x值變成81,循環(huán)條件不成立,循環(huán)結束。24、在窗體上畫一個名稱為Commandl的命令按鈕,再畫兩個名稱分別為Label1、Label2的標簽,然后編寫如下程序代碼:PrivateXAsIntegerPrivateSubCommandl_Click()X=5:Y=3Callproc(X,Y)Labell.Caption=XLabel2.Caption=YEndSubPrivateSubproc(aAsInteger,ByValbAsInteger)X=a*a:Y=b+bEndSub程序運行后,單擊命令按鈕,則兩個標簽中顯示的內容分別是A、25和3B、5和3C、25和6D、5和6標準答案:A知識點解析:本題考查的考點是有關參數傳遞的。在VB的過程調用時,參數有兩種傳遞方式:傳址傳遞和傳值傳遞。如果在過程聲明時形參用ByVal聲明,說明此參數為傳值調用:若用ByRef聲明,說明此參數為傳址調用:沒有說明傳遞類型,則默認為傳址傳遞。即形參的結果會傳遞給實參。由于本題中的實參Y采用傳值傳遞,實參X采用傳址傳遞,而且X是全局變量,所以在被調過程中改變了X的值而沒有改變Y的值。25、設窗體上有一個文本框Textl和一個命令按鈕Commandl,并有以下事件過程:PrivateSubCommandl_Click()DimsAsString,chAsStrings=""Fork=1ToLen(Textl)ch=Mid(Textl,k,1)s=ch+sNextkTextl.Text=sEndSub程序執(zhí)行時,在文本框中輸入“Basic”,然后單擊命令按鈕,則Textl中顯示的是A、BasicB、cisaBC、BASICD、CISAB標準答案:B知識點解析:本題考查的考點是有關循環(huán)和取子串函數的。本題比較簡單,循環(huán)次數就是字符串的長度,每次都在第k位取一個字母,最后倒序連接起來。注意每次都把ch連接到s的前面。國家二級VB機試(選擇題)模擬試卷第4套一、選擇題(本題共40題,每題1.0分,共40分。)1、某帶鏈棧的初始狀態(tài)為top=bottom=NULL,經過一系列正常的入棧與退棧操作后,top=bottom=20。該棧中的元素個數為()。A、0B、1C、20D、不確定標準答案:B知識點解析:帶鏈的棧就是用一個單鏈表來表示的棧,棧中的每一個元素對應鏈表中的一個結點。棧為空時,頭指針和尾指針都為NULL;棧中只有一個元素時,頭指針和尾指針都指向這個元素。2、在窗體上畫一個Timer1計時器控件和一個Shape1形狀控件,并編寫如下程序PrivateSubForm_Load()Timer1.Interval=1000Timer1.Enabled=TrueEndSubPrivateSubTimer1_Timer()IfShape1.Shape=1ThenShape1.Shape=3ElseShape1.Shape=1EndIfEndSub運行程序,則看到的結果是A、交替顯示正方形和圓形,每秒交替一次B、交替顯示矩形和橢圓形,每秒交替一次C、顯示正方形,每秒閃爍一次D、顯示橢圓形,每秒移動一次標準答案:A知識點解析:Interval屬性用來設置計時器事件之間所間隔的毫秒數(ms),每隔1000毫秒即每隔1秒產生一個Timer事件。當Shape屬性設置形狀控件的形狀。在Timer事件中,如果形狀控件的形狀為正方形(即Shape為1),形狀控件形狀變?yōu)閳A形(即Shape為3);故選項A正確,其他選項均錯誤。3、以下關于多窗體的敘述中,正確的是A、任何時刻,只有一個當前窗體B、向一個工程添加多個窗體,存盤后生成一個窗體文件C、打開一個窗體時,其他窗體自動關閉D、只有第一個建立的窗體才是啟動窗體標準答案:A知識點解析:本題考查窗體的使用。選項A正確;選項B錯誤,每個窗體都有其存盤文件;選項C錯誤,打開一個窗體時,其他的窗體不一定會關閉:選項D錯誤,啟動窗體可以在工程屬性中設置,和建立順序無關。4、在窗體上添加“控件”的正確的操作方式是A、先單擊工具箱中的控件圖標,再單擊窗體上適當位置B、先單擊工具箱中的控件圖標,再雙擊窗體上適當位置C、直接雙擊工具箱中的控件圖標,該控件將出現在窗體上D、直接將工具箱中的控件圖標拖動到窗體上適當位置標準答案:C知識點解析:在窗體上畫一個控件有以下兩種方法。第1種方法步驟如下:步驟1:單擊工具箱中的控件,該控件的圖標反相顯示。步驟2:把光標移到窗體的適當位置,此時光標變?yōu)椤?”號,按下鼠標左鍵,不松開,并向右下方拖動鼠標,窗體上顯示出一個方框,如圖3.7所示。步驟3:鼠標向右下方移動,所畫的方框逐漸增大,當增大到認為合適的大小時,松開鼠標左鍵,這樣就在窗體上畫好了一個控件。第2種方法比較簡單:雙擊工具箱中某個所需要的控件圖標即可。5、下列選項中不屬于結構化程序設計方法的是A、自頂向下B、逐步求精C、模塊化D、可復用標準答案:D知識點解析:結構化程序設計方法的主要原則可以概括為:自頂向下,逐步求精,模塊化,限制使用goto語句。自頂向下是指程序設計時應先考慮總體,后考慮細節(jié):先考慮全局目標,后考慮局部目標。逐步求精是指對復雜問題應設計一些子目標過渡,逐步細化。模塊化是把程序要解決的總目標先分解成分目標,再進一步分解成具體的小目標,把每個小目標稱為一個模塊??蓮陀眯允侵杠浖夭患有薷某缮约有薷谋憧稍诓煌能浖_發(fā)過程中重復使用的性質。軟件可復用性是軟件工程追求的目標之一,是提高軟件生產效率的最主要方法,不屬于結構化程序設計方法。6、軟件測試用例包括()。A、被測程序和測試規(guī)程B、測試計劃和測試數據C、輸入數據和預期輸出結果D、輸入數據和輸出數據標準答案:C知識點解析:測試用例(TestCase)是為測試設計的數據,由測試輸入數據和與之對應的預期輸出結構兩部分組成。測試用例的格式為:[(輸入值集),(輸出值集)]7、在面向對象方法中,實現信息隱蔽是依靠A、對象的繼承B、對象的多態(tài)C、對象的封裝D、對象的分類標準答案:C知識點解析:對象的封裝性是指從外部看只能看到對象的外部特征,即只需知道數據的取值范圍和可以對該數據施加的操作,而不需要知道數據的具體結構以及實現操作的算法。對象的內部,即處理能力的實行和內部狀態(tài),對外是不可見的。從外面不能直接使用對象的處理能力,也不能直接修改其內部狀態(tài),對象的內部狀態(tài)只能由其自身改變。8、結構化程序設計中,下面對goto語句使用描述正確的是A、禁止使用goto語句B、使用goto語句程序效率高C、應避免濫用goto語句D、goto語句確實一無是處標準答案:C知識點解析:濫用goto語句確實有害,應盡量避免;完全避免使用goto語句并非是明智的方法,有些地方使用goto語句會使程序流程更清楚、效率更高;爭論的焦點不應該放在是否取消goto語句,而應該放在用在什么程序結構上。9、軟件按功能可以分為:應用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于系統(tǒng)軟件的是A、編輯軟件B、操作系統(tǒng)C、教務管理系統(tǒng)D、瀏覽器標準答案:B知識點解析:軟件根據應用目標的不同,是多種多樣的。軟件按功能可以分為:應用軟件、系統(tǒng)軟件、支撐軟件(或工具軟件)。應用軟件是為解決特定領域的應用而開發(fā)的軟件。系統(tǒng)軟件是計算機管理自身資源,提高計算機使用效率并為計算機用戶提供各種服務的軟件。支撐軟件是介于系統(tǒng)軟件和應用軟件之間,協(xié)助用戶開發(fā)軟件的工具性軟件,包括輔助和支持開發(fā)和維護應用軟件的工具軟件,還包括輔助管理人員控制開發(fā)進程和項目管理的工具軟件。10、以下不合法的VB變量名是A、filenameB、readC、_yD、e5標準答案:C知識點解析:變量是用一個名稱來表示的,給變量命名時應遵循規(guī)則:名稱只能由字母、數字和下劃線組成:名稱的第一個字符必須是英文字母,最后一個字符可以是類型說明符;名稱的有效字符為255個;不能用VB的保留字作變量名,但變量名中可以包含保留字,如ConstA;變量名也不能是末尾帶有類型說明符的保留字,如Dim!是不合法的變量名;不區(qū)分字母的大小寫。11、能夠產生1到50之間(含1和50)隨機整數的表達式是A、Int(Rnd*51)B、Int(Rnd(50)+1)C、Int(Rnd*50)D、Int(Rnd*50+1)標準答案:D知識點解析:隨機數函數Rnd的功能是用于產生一個小于1但大于或等于0的隨機數。為了生成某個指定范圍內的隨機整數,可使用以下公式:Int((upperbound-lowerbound+1)*Rnd+lowerbound),其中upperbound是隨機整數范圍的上限,lowerbound是隨機整數范圍的下限。本題中upperbound為50,lowerbound為1。12、輸入VisualBasic源程序時,若一個命令行中包含兩個語句,則兩個語句之間的分隔符應使用A、冒號(:)B、分號(;)C、下劃線(_)D、連字符(-)標準答案:A知識點解析:輸入VisualBa
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 動火安全課件
- 醫(yī)院反腐倡廉廉潔行醫(yī)專題黨課宣講課件
- 《超市盤點操作流程》課件
- 贛南科技學院《現代企業(yè)管理學》2023-2024學年第一學期期末試卷
- 應急照明系統(tǒng)培訓課件
- 大學生安全教育(共31張課件)-2024鮮版
- 七年級語文上冊第二單元體驗親情8世說新語二則高效教案新人教版
- 2022年-2023年公務員(國考)之公共基礎知識??寄M試題
- 氣胸護理查房
- 慶元旦表演安全課件
- 2025年林權抵押合同范本
- 2024年北師大版四年級數學上學期學業(yè)水平測試 期末卷(含答案)
- 智能檢測與監(jiān)測技術-智能建造技術專02課件講解
- 2025蛇年一年級寒假作業(yè)創(chuàng)意與寓意齊【高清可打印】
- 2024年高考物理一輪復習講義(新人教版):第七章動量守恒定律
- 多系統(tǒng)萎縮鑒別及治療
- 設備的使用和維護管理制度模版(3篇)
- 浙江省寧波市慈溪市2023-2024學年高三上學期語文期末測試試卷
- 草學類專業(yè)生涯發(fā)展展示
- 法理學課件馬工程
- 2024年廣東省公務員錄用考試《行測》真題及解析
評論
0/150
提交評論