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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

國家二級VB機試(選擇題)模擬試卷4(共9套)(共380題)國家二級VB機試(選擇題)模擬試卷第1套一、選擇題(本題共40題,每題1.0分,共40分。)1、數據結構主要研究的是數據的邏輯結構、數據的運算和()。A、數據的方法B、數據的存儲結構C、數據的對象D、數據的邏輯存儲標準答案:B知識點解析:數據結構是研究數據元素及其之間的相互關系和數據運算的一門學科,它包含3個方面的內容,即數據的邏輯結構、存儲結構和數據的運算。2、一棵二叉樹的前序遍歷結果是ABCEDF,中序遍歷結果是CBAEDF,則其后序遍歷的結果是()。A、DBACEFB、CBEFDAC、FDAEBCD、DFABEC標準答案:B知識點解析:由于該二叉樹的前序遍歷結果是ABCEDF,顯然A結點為根結點,所以后序遍歷時A結點是最后遍歷的,其后序遍歷的結果為CBEFDA。3、在數據處理中,其處理的最小單位是()。A、數據B、數據項C、數據結構D、數據元素標準答案:B知識點解析:數據元素是由多個數據項組成,數據是能夠被計算機識別、存儲和加工處理的信息載體,數據處理的最小單位是數據項。4、在數據庫系統(tǒng)的內部結構體系中,索引屬于()。A、模式B、內模式C、外模式D、概念模式標準答案:B知識點解析:內模式又稱物理模式,它給出了數據庫物理存儲結構與物理存取方法,如數據存儲的文件結構、索引、集簇及hash等存取方式與存取路徑,內模式的物理性主要體現在操作系統(tǒng)及文件級上,它還未深入到設備級上(如磁盤及磁盤操作)。5、以下()不屬于對象的基本特征。A、繼承性B、封裝性C、分類性D、多態(tài)性標準答案:A知識點解析:對象具有特征為:標識惟一性,指對象是可區(qū)分的;分類性,指可以將具有相同屬性和操作的對象抽象成類:多態(tài)性,指同一個操作可以是不同對象的行為;封裝性,從外面看只能看到對象的外部特征,而不知道也無需知道數據的具體結構以及實現操作的算法:模塊獨立性好。對象是面向對象的軟件的基本模塊,對象內部各種元素彼此結合得很緊密,內聚性強。6、數據庫系統(tǒng)的核心是()。A、數據模型B、軟件開發(fā)C、數據庫設計D、數據庫管理系統(tǒng)標準答案:D知識點解析:數據庫管理系統(tǒng)DBMS是數據庫系統(tǒng)的核心。DBMS是負責數據庫的建立、使用和維護的軟件。DBMS建立在操作系統(tǒng)之上,實施對數據庫的統(tǒng)一管理和控制。用戶使用的各種數據庫命令以及應用程序的執(zhí)行,最終都必須通過DBMS。另外,DBMS還承擔著數據庫的安全保護工作,按照DBA所規(guī)定的要求,保證數據庫的完整性和安全性。7、開發(fā)軟件所需高成本和產品的低質量之間有著尖銳的矛盾,這種現象稱做()。A、軟件矛盾B、軟件危機C、軟件藕合D、軟件產生標準答案:B知識點解析:隨著計算機軟件規(guī)模的擴大,軟件本身的復雜性不斷增加,研制周期顯著變長,正確性難以保證,軟件開發(fā)費用上漲,生產效率急劇下降,從而出現了人們難以控制軟件發(fā)展的局面,即所謂的“軟件危機”。8、關系模型允許定義3類數據約束,下列不屬于數據約束的是()。A、實體完整性約束B、參照完整性約束C、屬性完整性約束D、用戶自定義的完整性約束標準答案:C知識點解析:關系模型允許3類數據約束,它們是:·實體完整性約束:該約束要求關系的主鍵中屬性值不能為空值,這是數據庫完整性的最基本要求;·參照完整性約束:該約束是關系之間相關聯的基本約束,它不允許關系引用不存在的元組:即在關系中的外鍵要么是所關聯關系中實際存在的元組,要么就為空值;·用戶定義的完整性約束:用戶定義的完整性就是針對某一具體關系數據庫的約束條件,它反映某一具體應用所涉及的數據必須滿足的語義要求。9、關系表中的每一行記錄稱為一個()。A、字段B、元組C、屬性D、關鍵碼標準答案:B知識點解析:在關系表中,每一列稱為一個屬性,對應表中的一個字段;每一行稱為一個元組,對應表中的一條記錄。10、在數據庫管理技術的發(fā)展中,數據獨立性最高的是()。A、人工管理B、文件系統(tǒng)C、數據庫系統(tǒng)D、數據模型標準答案:C知識點解析:在人工管理階段,數據無法共享,冗余度大,不獨立,完全依賴程序;在文件系統(tǒng)階段,數據共享性差;在數據庫系統(tǒng)階段,共享性好,獨立性高。11、設a=2,b=3,c=4,d=5,下列表達式的值是()。3>2*bOra=cAndb

cOrb

a+cA、1B、TrueC、FalseD、一1標準答案:B知識點解析:一個表達式可能含有多種運算,計算機按一定的順序對表達式求值。一般順序如下:(1)首先進行函數運算;(2)接著進行算術運算,其次序為:算術運算符,冪運算符(^)優(yōu)先級最高,其次是取負運算(-)、乘(*)、浮點除(/)、整除(\)、取模(Mod)、加(+)、減(-)、字符串連接符(&);(3)然后進行關系運算(=、>、<、<>、<=、>=);(4)最后進行邏輯運算(Not、And、Or、Xor、Eqv、Imp)本題先計算“2*b=6、a+c=5”,然后計算“3>2*b=False”、“a=c=False”、“b<>c=True”、“b<>a+c=True”,那么表達式轉化為“FalseOrFalseAndTrueOrTrue”,所以最后結果為“true”。12、下列可以激活屬性窗口的操作是()。A、用鼠標雙擊窗體的任何部位B、按Ctrl+F4鍵C、執(zhí)行“工程”菜單中的“屬性窗口”命令D、按F4鍵標準答案:D知識點解析:本題考查屬性窗口的打開。屬性窗口在設計階段可用于改變窗體或控件的某些屬性。如果VB集成環(huán)境中屬性窗口沒有顯示,最常見的方法是利用F4鍵打開,或者使用“視圖”菜單中的“屬性窗口”命令打開,還可以使用“標準”格式工具欄上的“屬性窗口”命令打開。13、VB的數值型數據分為()兩種。A、整數和長整數B、整數和浮點數C、單精度浮點數和雙精度浮點數D、整數和貨幣數據類型標準答案:B知識點解析:本題考查數值型數據。VB中提供的數值類型包括整數、浮點數、貨幣類型和字節(jié)型。一般來講貨幣類型為定點浮點數或者整數,而字節(jié)型為整數。14、設有變量聲明為“DimaDateAsDate”,則能為變量aDate正確賦值的表達方式是()。A、aDate=#8/2008#B、aDate=#"8/8/2008"#C、aDate=Date("8/8/2008")D、aDate=Format("m/d/yy","8/8/2008")標準答案:A知識點解析:本題考查日期型數據。一般日期型數據可以是任何可以表示的日期,放在一對“#”號中,或者可以用數字序列表示日期。注意,如“"8/8/2008"”為字符串,不表示日期。函數Date返回當前日期,函數的參數為空。Format函數的第一個參數為日期,第二個參數為格式串。15、從鍵盤上輸入一個浮點數asingle,利用字符串函數對該數進行處理后,如果輸出的內容不是“非浮點數”,則對程序輸出的內容分析正確的是()。asingle=InputBox("請輸入一個浮點數:")str1$=Str$(asingle):p=InStr(str1$,".")Ifp>0ThenPrintMid$(str1$,p)ElsePrint"非浮點數"EndIfA、輸出asingle的字符串形式B、輸出數據asingle的整數部分C、輸出數據asingle的小數點及小數點后面的數字D、只去掉數據中的小數點,保留所有數字輸出標準答案:C知識點解析:本題考查字符串函數。題目中用到了Instr()函數,字符串匹配函數Instr主要用于查找字符串2在字符串1中第一次出現的位置,若未找到返回0,因此Instr(str1,".")用于查找字符串應Str1中為“?!钡奈恢茫籗tr(asingle)函數是把數字轉化為字符串;Mid,(str1,p)用于從Str1中取出從p開始所有的字符。16、表達式Abs(-5)+Len("ABCDE")的值是()。A、5ABCDEB、.5ABCDEC、10D、0標準答案:C知識點解析:本題考查數學函數和字符串函數。數學函數Abs(-5)用于求一5的絕對值,而Len()函數則用于計算字符串中包含的字符個數。17、當一個工程含有多個窗體時,其中啟動窗體是()。A、啟動VisualBasic時建立的窗體B、第一個添加的窗體C、最后一個添加的窗體D、在“工程屬性”對話框中指定的窗體標準答案:D知識點解析:VB規(guī)定,對于多窗體程序,必須在“工程屬性”對話框中指定其中一個窗體為啟動窗體。如果未指定,那么就默認設計時的第一個窗體為啟動窗體,這個默認的啟動窗體就是“工程屬性”對話框中的默認窗體。18、有下列程序,運行后的結果為()。X=2.4:Y=3:Z=5Print"A(",X+Y*Z;")"A、A(17)B、A(17.4)C、A(18)D、A(2.4+3*5)標準答案:B知識點解析:本題考查Print方法的輸出。使用Print方法可以在窗體或圖片框上輸出文本,方法的參數為輸出的內容,各個輸出項之間可以使用逗號或分號隔開,如果用“,”隔開,則表示輸出項分區(qū)輸出,否則表示連續(xù)輸出。因此題目中的輸出項"A(";X+Y*Z;")"之間用分號分隔是連續(xù)輸出。19、下面不能在信息框中輸出“VisualBasic”的是()。A、x=MsgBox("VisualBasi")B、MsgBox("VisualBasic")C、MsgBox"VisualBasic"D、CallMsgBox"VisualBasic"標準答案:C知識點解析:MsgBox()函數用于顯示提示信息,并可返回一個代表用戶單擊了哪個按鈕的Integer類型值,當其作為函數使用時必須將參數放在括號內部,而返回值可以賦值給一個變量,也可以單獨使用此函數而不將其返回值賦值給變量;MsgBox過程也用于顯示提示信息,作為過程必須使用Call關鍵字來進行調用,其參數不能加括號。20、如果一個直線控件在窗體上呈現為一條垂直線,則可以確定的是()。A、它的Y1、Y2屬性的值相等B、它的X1、X2屬性的值相等C、它的X1、Y1屬性的值分別與X2、Y2屬性的值相等D、它的X1、X2屬性的值分別與Y1、Y2屬性的值相等標準答案:B知識點解析:Line控件有四個屬性分別為X1、Y1,X2、Y2,分別代表兩個端點的橫坐標和縱坐標,如果顯示為一條縱線,則意味著兩個端點的橫坐標一致,即X1=X2。21、()控件可以使圖形根據控件大小而改變大小。A、圖片框B、標簽C、圖像框D、框架標準答案:C知識點解析:本題考查常見控件的基本屬性。圖片框的AutoSize屬性設定圖片框是否按裝入圖形的大小來調整大小;圖像框的Stretch屬性設定是否調整圖形的大小以適用圖像框控件。標簽一般用來處理文本,而框架主要用來作為其他控件的容器。22、要想不使用Shift或Ctrl鍵就能在列表框中同時選擇多個項目,則應把該列表框的MultiSelect屬性設置為()。A、0B、1C、2D、其他標準答案:B知識點解析:本題考查列表框的MultiSelect屬性。默認狀況下列表框僅可以選擇一項,通過設置MultiSelect屬性值可改變多選設置,該屬性有3種值:0表示禁止多選;1表示簡單多選,在選項上單擊可以選定多項;2為借助Ctr1和Shift鍵進行的多項選擇。23、以下()操作不能觸發(fā)滾動條Change事件。A、拖動滾動塊B、單擊兩端箭頭C、單擊滾動塊D、單擊箭頭與滾動塊之間的滾動條標準答案:C知識點解析:本題考查滾動條。單擊滾動條的箭頭或者滾動條的滑塊位置改變(也就是更改其Value屬性)都可以觸發(fā)Change事件,而拖動滑塊不但會觸發(fā)Change事件還會觸發(fā)Scroll事件。24、語句PrintFormat(Int(12345.6789*100+0.5)/100,"0000,0.00")的輸出結果是()。A、12,3456.8B、12,34.5C、12,3.45D、12,345.68標準答案:D知識點解析:本題考查格式化函數Format,格式化函數Format的作用是使第一個參數的數字按照第二個參數的格式來輸出。格式為:0000,0.00,表示小數點前面有多少位全部輸出,且每隔3位輸出一個逗號,小數點后面保存2位。25、假定有如下的Sub過程:SubS(xAsSingle,yAsSingle)t=xx=t/yy=tModyEndSub在窗體上畫一個命令按鈕,然后編寫如下事件過程:PrivateSubCommand1_Click()DimaAsSingle,DimbAsSinglea=5:b=4Sa,bPrinta,bEndSub程序運行后,單擊命令按鈕,輸出結果為()。A、54B、11C、1.254D、1.251標準答案:D知識點解析:本題考察過程調用知識。在命令按鈕單擊事件過程中,初始時a=5、b=4;在S過程初始時,x=5、y=4,s過程計算后,x=1.25、y=1,所以S過程返回后a=1.25、b=1。26、下列程序執(zhí)行后,變量x的值為()。Dima,b,c,dAsSingleDimxAsSinglea=10:b=30:C=400Ifb>aThend=a:a=b:b=dEndIfIfb>cThenx=bElselfa>cThenx=cElsex=aEndIfA、10B、30C、400D、430標準答案:B知識點解析:本題考查選擇語句的程序分析。If語句的執(zhí)行是If條件表達式值為True時執(zhí)行If分支,否則執(zhí)行Elself分支或者結束。本題中首先判斷b>a成立,因此a、b的值交換;接下來由于b>c不成立,a>c也不成立,因此x的值為a。27、窗體上有名稱為Commandl的命令按鈕和名稱為Text1的文本框()。PrivateSubCommand1_Click()Text1.Text="程序設計"Text1.SetFocusEndSubPrivateSubText1_CotFocus()Text1.Text="等級考試"EndSub運行以上程序,單擊命令按鈕后()。A、文本框中顯示的是“程序設計”,且焦點在文本框中B、文本框中顯示的是“等級考試”,且焦點在文本框中C、文本框中顯示的是“程序設計”,且焦點在命令按鈕上D、文本框中顯示的是“等級考試”,且焦點在命令按鈕上標準答案:B知識點解析:SetFocus方法用于將焦點移到指定的對象上,而當一個對象獲得焦點時將觸發(fā)其GotFocus事件過程。28、下列程序代碼段中,在單擊命令按鈕調用SelMid函數時,其運行結果為()。PrivateFunctionSelMid(aStrAsString)AsStringDimtempAsStringDimsLenAsIntegertemp=""sLen=Len(aStr)i=1DoWhilei<=sLen/2temp=temp+Mid(aStr,i,1)+Mid(aStr,sten-i+1,1)i=i+1LoopSelMid=tempEndFunctionPrivateSubCommand1_Click()DimStrAsStringStr="abcdef":PrintSelMid(Str)EndSubA、abcdefB、afbecdC、fedcbaD、defabc標準答案:B知識點解析:本題考查函數過程分析。單擊命令按鈕時,事件過程內部調用SelMid函數。SelMid函數的功能是,將字符串重組,重組的規(guī)則是:從原字符串中前后各取一個字符重新連接起來并存入中間變量temp中(追加到中間變量原有字符的后面);然后再取原字符串中的前面第2個和倒數第2個字符連接起來,再連接到變量temp中;以此類推,直到將原字符串中的字符全部追加到變量temp中為止。29、設有一個有10個元素的數組,下列程序將該數組的第1個元素與第10個元素交換,第2個元素與第9個元素交換……,第5個元素與第6個元素交換,在橫線處應填寫()。PrivateSubCommand1_Click()Dima(1To10)AsIntegerDimiAsInteger,DimPAsIntegerDimtAsInteger,DimjAsIntegerFori=1To10a(i)=iNextiForj=1To5t=a(j)______________NextjFor1=1To10Printa(i)NextiEndSubA、a(j)=a(11-j)a(11-j)=tB、a(11-j)=a(j)a(j)=1C、a(j)=a(11-j)a(j)=tD、a(11-j)=ta(j)=a(11-j)標準答案:A知識點解析:本題考查數組中元素的逆置操作。循環(huán)次數為數組中元素個數的一半,每一次都要進行下標之和為11的前后兩個元素交換。30、下面正確使用動態(tài)數組的是()。A、Dimarr1()AsInteger…ReDimarr1(3,5)B、Dimarr1()AsInteger…ReDimarr1(50)AsStringC、Dimarr1()…ReDimarr1(50)AsIntegerD、Dimarr1(50)AsInteger…ReDimarr1(20)標準答案:A知識點解析:通常把需要在編譯時分配內存區(qū)的數組叫做靜態(tài)數組,而把需要在運行時分配內存區(qū)的數組叫做動態(tài)數組。定義動態(tài)數組通常分兩步:首先在窗體層或標準模塊中用Dim、Private或Public聲明一個沒有下標的數組(括號不能省略),然后在過程中用ReDim語句定義帶下標的數組。ReDim語句只能用于動態(tài)數組,它可以改變每一維的大小,但不能改變維數和數組類型。31、已知數組Dima(1To10)AsInteger,則下面正確調用GetValue函數的是()。PrivateFunctionGetValue(a()AsInteger)AsIntegerFori=lTo10GetValue=GetValue+a(i)NextIEndFunctionA、S=GetValue(a(1To10))B、S=GetValue(a)C、S=GetValue(a(10))D、S=GetValuea標準答案:B知識點解析:本題考查數組作為函數參數的調用。數組作為函數參數只能進行地址傳遞。需要注意的是在形參數組中可以忽略維數的定義,但是不能省略圓括號,實參數組名后面可以不跟圓括號。32、單擊一次命令按鈕,下列程序代碼的執(zhí)行結果為()。PrivateSubCommand1_Click()DimaAsInteger,bAsInteger,cAsIntegera=2:b=3:C=4PrintP2(c,b,a)EndSubPrivateFunctionP1(xAsInteger,yAsInteger,zAsInteger)P1=2*x+y+3*zEndFunctionPrivateFunctionP2(xAsInteger,yAsInteger,zAsInteger)P2=P1(z,x,y)+xEndFunctionA、21B、19C、17D、34標準答案:A知識點解析:本題考查函數調用以及參數傳遞。在命令按鈕單擊事件中,調用輸出函數P2的執(zhí)行結果,實參a、b、c傳遞給形參x、y、z,具體的值為2、3、4。在P2函數過程中,調用P1,實參z、x、y傳遞給P1的實參x、y、z,具體的值為4、2、3。33、在窗體中有一個名為Command1的命令按鈕,并編寫有以下代碼。程序執(zhí)行時,單擊命令按鈕,輸出的結果為()。PublicSubProcl(nAsInteger,ByValmAsInteger)n=nMod10:m=m/10EndSubPrivateSubCommand1_Click()DimxAsInteger,yAsIntegerx=12:y=34CallProc1(x,y)Printx;yEndSubA、23B、234C、123D、1234標準答案:B知識點解析:本題考查參數傳遞。在VB的過程調用中,參數有兩種傳遞方式:傳址傳遞和傳值傳遞。如果在過程聲明時形參用ByVal聲明,說明此參數為傳值調用;若用ByRef聲明,說明此參數為傳址調用;沒有說明傳遞類型,則默認為傳址傳遞。題目中的實參x為傳址調用,y為傳值調用,因此n的變化影響x,而m變化不會影響y。34、設有如下事件過程:PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfBumon=2ThenPopupMenupopMenuEndIfEndSub則以下描述中錯誤的是()。A、該過程的功能是彈出一個菜單B、popMenu是在菜單編輯器中定義的彈出式菜單的名稱C、參數X、Y指明鼠標的當前位置D、Button=2表示按下的是鼠標左鍵標準答案:D知識點解析:本題考查鼠標事件和彈出菜單。鼠標狀態(tài)事件有按下(MouseDown)、移動(MouseMove)和彈起(MouseUp),這幾種事件能夠通過參數區(qū)分出鼠標的左鍵、右鍵和中間鍵,鼠標鍵的對應值及其說明為:1-用戶按下左鍵觸發(fā)了鼠標事件;2-用戶按下右鍵觸發(fā)了鼠標事件:4-用戶按下中間鍵觸發(fā)了鼠標事件。PopupMenu為彈出菜單方法,popMenu為菜單名。題目中程序的功能是當鼠標按下右鍵時彈出菜單popMenu。35、以下敘述中正確的是()。A、任何時候都可以使用標準工具欄的“菜單編輯器”按鈕打開菜單編輯器B、只有當代碼窗口為當前活動窗口時,才能打開菜單編輯器C、只有當窗體設計窗口為當前活動窗體時,才能打開菜單編輯器D、任何時候都可以使用“工具”菜單下的“菜單編輯器”命令,打開菜單編輯器標準答案:C知識點解析:本題考查菜單編輯器。在窗體設計界面中,可以使用“工具”菜單下的“菜單編輯器”命令,或使用工具欄上的菜單編輯器命令,來打開菜單編輯器。在代碼窗口中,菜單編輯器命令為灰色的,不可以使用。36、窗體上有一個名稱為Text1的文本框和一個名稱為Command1的命令按鈕,要求程序運行時,單擊命令按鈕(如圖1所示),就可以把文本框中的內容寫到文件Out.txt中,每次寫入的內容附加到文件原有內容之后。以下能正確實現上述功能的程序是()。A、PrivateSubCommand1Click()Open"Out.txt"ForInputAs#1Print#1.Text1.TextClose#1EndSubB、PrivateSubCommandlClick()Open"Out.txt"ForOUtputAs#1Print#1.Text1.TextClose#1EndSubC、PrivateSubCommand1Click()Open"Out.txt"ForAppendAs#1Print#1.Text1.TextClose#1EndSubD、PrivateSubCommand1Click()Open"Out.txt"ForRandomAs#1Print#1.TeXt1.TextClose#1EndSub標準答案:C知識點解析:本題考查文件的打開方式。題目中要求在命令按鈕單擊事件中,往文件中寫入信息,并且是追加到原有信息的后面,因此,要用Append方式打開文件。37、假設用復制、粘貼的方法建立了一個命令按鈕數組Command1,以下對該數組的說法錯誤的是()。A、命令按鈕的所有Caption屬性都是Command1B、在代碼中訪問任意一個命令按鈕只需使用名稱Command1C、命令按鈕的大小都相同D、命令按鈕共享相同的事件過程標準答案:B知識點解析:本題考查控件數組。在命令按鈕數組Command1中,Command1為控件數組中所有元素的名字,因此訪問數組中某個元素時,必須說明其Index屬性??丶到M中所有元素的大小相同,共用相同的事件過程,通過:Index屬性值的不同來區(qū)分具體由哪個按鈕進行處理。38、下面關于多重窗體的敘述中,正確的是()。A、作為啟動對象的Main子過程只能放在窗體模塊內B、如果啟動對象是Main子過程,則程序啟動時不加載任何窗體,以后由該過程根據不同情況決定是否加載窗體或加載哪一個窗體C、沒有啟動窗體,程序不能執(zhí)行D、以上都不對標準答案:B知識點解析:本題考查多重窗體。VB允許對多個窗體進行處理,多重窗體(MultiForm)程序中的每個窗體都可以有自己的界面和代碼,完成各自的功能。默認第一個窗體為啟動窗體。也可以在“工程”菜單中利用屬性對話框的提示自行設置啟動窗體??梢栽跇藴誓K中定義Main子過程作為啟動窗體,如果啟動對象是Main子過程,則程序啟動時不加載任何窗體,以后由該過程根據不同情況決定是否加載窗體或加載哪一個窗體。39、設在工程中有一個標準模塊,并定義了如下類型:TypeStutypeinoAsIntegerstrnameAsString*20strsexASString*2smarkAsSingleEndType在窗體上畫一個名為Command1的命令按鈕,要求當執(zhí)行事件過程Command1Click時,在C盤根目錄下的隨機文件Student.dat中寫入一條記錄。下列能夠完成該操作的是()。A、SubCommand1_Click()DimstudentAsStudypeDimrecord_noAsIntegerrecord_no=1Withstudent.ino=12:.stmame="smith":.strsex="男":.smark=89EndWithOpen"c:\Student.dat"ForInputAs#1Len=Len(Student)Put#1.recordno.StudentClose#1EndSubB、SubCommand1Click()DimStudentAsStutypeDimRecordnoAsIntegerRecordno=1WithStudent.ino=12:.stmame="smith".strsex="男":.smark=89EndWithOpen"c:\student.dat"ForRandomAs#1Len=Len(Student)Put#1,Recordno.StudentClose#1EndSubC、PrivateSubCommand1Click()DimStudentAsStutypeDimRecord_noAsIntegerRecord_no=1WithStudent.ino=12:.stmame="smith".strsex="男":.smark=89EndWithOpen"c:\student.dat"ForRandomAs1Len=Len(Student)Write#1,RD、SubCommand1_Click()DimStudentAsStutypeDimRecord_noAsIntegerRecord_no=1WithStudent.ino=12:.stmame="smith".strsex:"男":.smark=89EndWithOpen"c:\student.dat"ForOutputAs#1Len=Len(Student)Put#1,Record_no,S標準答案:B知識點解析:本題考查文件操作。題目中要求以隨機的方式(Random)打開一個文件,打開文件的方法格式為:OpenFileNameForRandomAs#文件號[Len=記錄長度],然后以Put方法寫入一條記錄,方法的格式為:Put[#]文件號,[記錄號],變量名。40、為計算1+2+22+23+24+…+210。的值,并把結果顯示在文本框Text1中,若編寫如下事件過程:PrivateSubCommand1_Click()Dima%,b%,i%s=1a=2Fori=2To10a=a*2b=b+aNextiText1.Text=bEndSub執(zhí)行此事件過程后發(fā)現結果是錯誤的,為能夠得到正確結果,應做的修改是()。A、把b=1改為b=0B、把Fork=2To10改為Fori=lTo10C、交換語句b=b+a和a=a*2的順序D、同時進行B、C兩種修改標準答案:D知識點解析:本題事件過程原代碼計算的是:1+22+23+24+…+210共10個數的值,其中缺少一項,即數2。為此應將循環(huán)次數由9次修改為10次,即Fori=1To10,但同時需交換語句b=b+a和a=a*2的順序,否則將計算表達式:1+22+23+24+…+210+211的值。國家二級VB機試(選擇題)模擬試卷第2套一、選擇題(本題共40題,每題1.0分,共40分。)1、下列關于線性鏈表的敘述中,正確的是()。A、各數據結點的存儲空間可以不連續(xù),但它們的存儲順序與邏輯順序必須一致B、各數據結點的存儲順序與邏輯順序可以不一致,但它們的存儲空間必須連續(xù)C、進行插入與刪除時,不需要移動表中的元素D、以上說法均不正確標準答案:C知識點解析:一般來說,在線性表的鏈式存儲結構中,各數據結點的存儲序號是不連續(xù)的,并且各結點在存儲空間中的位置關系與邏輯關系也不一致。線性鏈表中數據的插入和刪除都不需要移動表中的元素,只需改變結點的指針域即可。2、下列敘述中正確的是()。A、循環(huán)隊列是隊列的一種鏈式存儲結構B、循環(huán)隊列是隊列的一種順序存儲結構C、循環(huán)隊列是非線性結構D、循環(huán)隊列是一種邏輯結構標準答案:B知識點解析:在實際應用中,隊列的順序存儲結構一般采用循環(huán)隊列的形式。3、軟件測試的目的是()。A、評估軟件可靠性B、發(fā)現并改正程序中的錯誤C、改正程序中的錯誤D、發(fā)現程序中的錯誤標準答案:D知識點解析:軟件測試是為了發(fā)現錯誤而執(zhí)行程序的過程,測試要以查找錯誤為中心,而不是為了演示軟件的正確功能。不是為了評估軟件或改正錯誤。4、在軟件開發(fā)中,需求分析階段產生的主要文檔是()。A、軟件集成測試計劃B、軟件詳細設計說明書C、用戶手冊D、軟件需求規(guī)格說明書標準答案:D知識點解析:需求分析階段的工作可以概括為:需求獲取、需求分析、編寫需求規(guī)格說明書、需求評審四個方面。所以選擇D。5、結構化程序所要求的基本結構不包括()。A、順序結構B、GOTO跳轉C、選擇(分支)結構D、重復(循環(huán))結構標準答案:B知識點解析:1966年Boehm和Jacopini證明了程序設計語言僅僅使用順序、選擇和重復三種基本控制結構就足以表達出各種其他形式結構的程序設計方法。6、下面描述中錯誤的是()。A、系統(tǒng)總體結構圖支持軟件系統(tǒng)的詳細設計B、軟件設計是將軟件需求轉換為軟件表示的過程C、數據結構與數據庫設計是軟件設計的任務之一D、PAD圖是軟件詳細設計的表示工具標準答案:A知識點解析:詳細設計的任務是為軟件結構圖中而非總體結構圖中的每一個模塊確定實現算法和局部數據結構,用某種選定的表達工具表示算法和數據結構的細節(jié),所以A錯誤。7、下列關于數據庫設計的敘述中,正確的是()。A、在需求分析階段建立數據字典B、在概念設計階段建立數據字典C、在邏輯設計階段建立數據字典D、在物理設計階段建立數據字典標準答案:A知識點解析:數據字典是在需求分析階段建立,在數據庫設計過程中不斷修改、充實和完善的。8、數據庫系統(tǒng)的三級模式不包括()。A、概念模式B、內模式C、外模式D、數據模式標準答案:D知識點解析:數據庫系統(tǒng)的三級模式是概念模式、外模式和內模式,所以選擇D9、在黑盒測試方法中,設計測試用例的主要根據是()。A、程序內部邏輯B、程序外部功能C、程序數據結構D、程序流程圖標準答案:B知識點解析:黑盒測試是對軟件已經實現的功能是否滿足需求進行測試和驗證,黑盒測試完全不考慮程序內部的邏輯結構和內部特性,只根據程序的需求和功能規(guī)格說明,檢查程序的功能是否符合它的功能說明,所以本題選擇B10、在軟件設計中不使用的工具是()。A、系統(tǒng)結構圖B、PAD圖C、數據流圖(DFD圖)D、程序流程圖標準答案:C知識點解析:系統(tǒng)結構圖是對軟件系統(tǒng)結構的總體設計的圖形顯示。在需求分析階段,已經從系統(tǒng)開發(fā)的角度出發(fā),把系統(tǒng)按功能逐次分割成層次結構,是在概要設計階段用到的。PAD圖是在詳細設計階段用到的。程序流程圖是對程序流程的圖形表示,在詳細設計過程中用到。數據流圖是結構化分析方法中使用的工具,它以圖形的方式描繪數據在系統(tǒng)中流動和處理的過程,由于它只反映系統(tǒng)必須完成的邏輯功能,所以它是一種功能模型,是在可行性研究階段用到的而非軟件設計時用到,所以選擇C11、以下敘述中正確的是()。A、在屬性窗口只能設置窗體的屬性B、在屬性窗口只能設置控件的屬性C、在屬性窗口可以設置窗體和控件的屬性D、在屬性窗口可以設置任何對象的屬性標準答案:C知識點解析:在屬性窗口中只能設置窗體和各種控件的屬性,故C選項正確。12、下列打開"代碼窗口"的操作中錯誤的是()。A、按F4鍵B、單擊"工程資源管理器"窗口中的"查看代碼"按鈕C、雙擊已建立好的控件D、執(zhí)行"視圖"菜單中的"代碼窗口"命令標準答案:A知識點解析:按F4鍵打開的是"屬性窗口",故A選項錯誤。13、要求如果x被7除余2,則輸出x的值,下列語句中不能實現此功能的語句是()。A、Ifxmod7=2ThenPrintxB、Ifx-(x\7)*7=2ThenPrintxC、Ifx-(x/7)*7=2ThenPrintxD、Ifx-Int(x/7)*7=2ThenPrintx標準答案:C知識點解析:選項C中(x/7)*7得到的值是x,x-x=0返回False,不執(zhí)行Printx,所以不能輸出x的值。故C選項錯誤。也可以把實際數值帶入語句中運行,根據結果就可判斷選項。14、表達式Sgn(0.25)的值是()。A、-1B、0C、1D、0.5標準答案:C知識點解析:Sgn函數是符號函數,正數返回1,負數返回-1,0返回0。本題中0.25是正數,所以返回1,故C選項正確。15、以下關于VB文件的敘述中,錯誤的是()。A、標準模塊文件不屬于任何一個窗體B、工程文件的擴展名為.frmC、一個工程只有一個工程文件D、一個工程可以有多個窗體文件標準答案:B知識點解析:工程文件的擴展名為.vbp,故B選項錯誤。16、設x為一整型變量,且情況語句的開始為:SelectCasex,則不符合語法規(guī)則的Case子句是()。A、CaseIs>20B、Case1To10C、Case0<IsAndIS<20D、Case2,3,4標準答案:C知識點解析:SelectCase語句中表達式的形式可以是:常量或變量;若干符合條件的值用","隔開;表達式1to表達式2;Is關系表達式。本題中選項A、B和D都符合語法規(guī)則。選項C中Is關系表達式語法錯誤,它可以是Is>0或Is<20,但不能是組合的0<IsAndIs<20。故C選項錯誤。17、語句DimArr(-2To4)AsInteger所定義的數組的元素個數為()。A、7個B、6個C、5個D、4個標準答案:A知識點解析:本題是定義了一個一維數組,下標是-2to4,所以數組元素的個數是4-(-2)+1=7,故選A。18、為了使窗體左上角不顯示控制框,需設置為False的屬性是()。A、VisibleB、EnabledC、ControlBoxD、Caption標準答案:C知識點解析:窗體的Visible屬性是設置窗體可見不可見;Enabled屬性是設置可用不可用;Caption屬性是用來設置窗體標題欄上顯示的內容;ControlBox屬性是設置窗體左上角是否顯示控制框,當屬性值為True時,顯示控制框,否則False時,不顯示。故選項C正確。19、以下說法中正確的是()。A、事件過程也是過程,只能由其他過程調用B、事件過程的過程名是由程序設計者命名的C、事件過程通常放在標準模塊中D、事件過程是用來處理由用戶操作或系統(tǒng)激發(fā)的事件的代碼標準答案:D知識點解析:事件過程也是過程,其他過程或系統(tǒng)都可以調用它。故A選項錯誤。事件過程的過程名是由系統(tǒng)命名的。故B選項錯誤。通常事件過程放在窗體模塊中。故C選項錯誤。事件過程是用來處理由用戶操作或系統(tǒng)激發(fā)的事件的代碼。只有當用戶或系統(tǒng)觸發(fā)事件后,才執(zhí)行相應的事件過程。故D選項正確。20、設有語句:Open"c:\Test.Dat"ForOutputAs#1則以下敘述中錯誤的是()。A、該語句打開C盤根目錄下的一個文件Test.Dat,如果該文件不存在則出錯B、該語句打開C盤根目錄下一個名為Test.Dat的文件,如果該文件不存在則創(chuàng)建該文件C、該語句打開文件的文件號為1D、執(zhí)行該語句后,就可以通過Print#語句向文件Test.Dat中寫入信息標準答案:A知識點解析:本題中是用Open語句打開一個順序文件Test.Dat,并指定一個文件號1。故C選項正確。如果Test.Dat文件不存在,則系統(tǒng)自動創(chuàng)建該文件。故B選項正確,A選項錯誤。用ForOutput模式打開文件,可通過Print#語句向文件寫入信息。故D選項正確。21、以下關于事件、事件驅動的敘述中,錯誤的是()。A、事件是可以由窗體或控件識別的操作B、事件可以由用戶的動作觸發(fā)C、一個操作動作只能觸發(fā)一個事件D、事件可以由系統(tǒng)的某個狀態(tài)的變化而觸發(fā)標準答案:C知識點解析:一個操作動作有時會觸發(fā)一個或多個事件。比如當按下鍵盤的某鍵時,會觸發(fā)KeyDown和Keypress事件。故A選項錯誤。22、要刪除列表框中最后一個列表項,正確的語句是()。A、List1.RemoveItemListCountB、List1.RemoveItemList1.ListCountC、List1.RemoveItemListCount-1D、List1.RemoveItemList1.ListCount-1標準答案:D知識點解析:ListCount屬性返回列表框中列表項的個數,列表項的索引號從0開始,所以要刪除最后一個列表項,ReMoveItem方法中的索引號就應該是List1.ListCount-1,故D選項正確。23、使用Line控件在窗體上畫一條從(0,0)到(600,700)的直線,則其相應屬性的值應是()。A、X1=0,X2=600,Y1=0,Y2=700B、Y1=0,Y2=600,X1=0,X2=700C、X1=0,X2=0,Y1=600,Y2=700D、Y1=0,Y2=0,X1=600,X2=700標準答案:A知識點解析:X1、Y1、X2、Y2屬性是直線的起點、終點坐標。故選A。24、設有窗體的Form_MouseMove事件過程如下:PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)If(ButtonAnd3)=3ThenPrint"檢查按鍵"EndIfEndSub關于上述過程,以下敘述中正確的是()。A、按下鼠標左鍵時,在窗體上顯示"檢查按鍵"B、按下鼠標右鍵時,在窗體上顯示"檢查按鍵"C、同時按下鼠標左、右鍵時,在窗體上顯示"檢查按鍵"D、不論做何種操作,窗體上都不會顯示標準答案:C知識點解析:25、確定圖片框Picture1在窗體上位置的屬性是()。A、Width和HeightB、Left和TopC、Width和TopD、Height和Left標準答案:B知識點解析:確定圖片框在窗體上位置的屬性是Left和Top,它們使用的是相對坐標,以窗體為參考點。26、以下不屬于單選按鈕的屬性是()。A、CaptionB、NameC、MinD、Enabled標準答案:C知識點解析:單選按鈕沒有Min屬性,滾動條控件的屬性中有Min屬性。27、對于列表框控件List1,能夠表示當前被選中列表項內容的是()。A、List1.TextB、List1.IndexC、List1.ListIndexD、List1.List標準答案:A知識點解析:Text屬性可返回當前被選中列表項的內容,故選A。Index屬性是當有列表框控件數組時,區(qū)分各列表框用的;ListIndex屬性返回的是被選中的列表項的索引值;List屬性設置或返回各列表項的內容。28、當文本框中的內容發(fā)生改變時所觸發(fā)的事件是()。A、KeyUpB、ChangeC、LostFocusD、GotFocus標準答案:B知識點解析:文本框中內容有變化時,觸發(fā)Change事件。故B選項正確。當在文本框中輸入數據,松開鍵盤時觸發(fā)它的KeyUp事件;文本框失去焦點觸發(fā)LostFocus事件;獲得焦點,觸發(fā)GotFocus事件。29、關于KeyPress事件,以下敘述中正確的是()。A、在控件數組的控件上按鍵盤鍵,不能觸發(fā)KeyPress事件B、按下鍵盤上任一個鍵時,都能觸發(fā)KeyPress事件C、按字母鍵時,擁有焦點的控件的KeyPress事件會被觸發(fā)D、窗體沒有KeyPress事件標準答案:C知識點解析:A選項錯誤原因:在控件數組的任何控件上按鍵盤鍵,會觸發(fā)KeyPress事件;B選項錯誤原因:只有按鍵盤上的ASCII字符鍵時,才能觸發(fā)KeyPress事件。ASCII字符鍵包括標準鍵盤上的字符、數字、標點符號、、和鍵等,其他鍵KeyPress事件不能識別。D選項錯誤原因:窗體也有KeyPresss事件。故C選項正確。30、窗體上有一個名稱為Text1的文本框;一個名稱為Timer1的計時器控件,其Interval屬性值為5000,Enabled屬性值是True。Timer1的事件過程如下:PrivateSubTimer1_Timer()StaticflagAsIntegerIfflag=0Thenflag=1flag=-flagIfflag=1ThenText1.ForeColor=&HFF&’&HFF&為紅色ElseText1.ForeColor=&HC000&’&HC000&為綠色EndIfEndSub以下敘述中正確的是()。A、每次執(zhí)行此事件過程時,flag的初始值均為0B、flag的值只可能取0或1C、程序執(zhí)行后,文本框中的文字每5秒改變一次顏色D、程序有邏輯錯誤,Else分支總也不能被執(zhí)行標準答案:C知識點解析:程序中flag被定義為Static變量,它的值只在第一次執(zhí)行事件過程時為0,以后每次執(zhí)行計時器事件過程它的值都會保留上次過程中運算后的值,之后它的值是1或-1。文本框控件的ForeColor屬性表示文本框中文字的顏色,計時器控件的Interval屬性為5000,即計時器間隔為5秒鐘一次,每次調用就會交替改變文本框中文字的顏色。因此C選項正確。31、下面程序運行時,若輸入"VisualBasicProgramming",則在窗體上輸出的是()。PrivateSubCommand1_Click()Dimcount(25)AsInteger,chAsStringch=UCase(InputBox("請輸入字母字符串"))Fork=1ToLen(ch)n=Asc(Mid(ch,k,1))-Asc("A")Ifn>=0Thencount(n)=count(n)+1EndIfNextkm=count(0)Fork=1To25IfmA、0B、1C、2D、3標準答案:D知識點解析:根據題中的程序代碼可知,ch為輸入字符串的大寫狀態(tài),第一個For循環(huán)是依次取出字母,n為取出字母與"A"字符的ASCII碼差值,然后再賦給數組count();第二個For循環(huán)是找出數組count()中的最小值,因此,最后窗體上輸出的結果為3,即選項D。32、在窗體上畫一個命令按鈕和一個文本框,其名稱分別為Command1和Text1,把文本框的Text屬性設置為空白,然后編寫如下事件過程:PrivateSubCommand1_Click()a=InputBox("Enteraninteger")b=Text1.TextText1.Text=b+aEndSub程序運行后,在文本框中輸入456,然后單擊命令按鈕,在輸入對話框中輸入123,則文本框中顯示的內容是()。A、579B、123C、456123D、456標準答案:C知識點解析:默認情況下,InputBox的返回值是一個字符串,因此程序中a="123",b="456",b+a="456"+"123"="456123"。因此C選項正確。另外,使用字符連接運算符"+"時,如果連接的是字符串和數值,可根據返回值類型判斷,若返回值類型為字符串,則它將數值轉換成字符串后與另一字符串連接成新字符串返回;若返回值類型為數值,則它要求字符串中只能包含數字,而不能有其他字符,否則報"類型不匹配"的錯誤。33、現有如下一段程序:PrivateSubCommand1_Click()x=UCase(InputBox("輸入:"))SelectCasexCase"A"To"C"Print"考核通過!"Case"D"Print"考核不通過!"CaseElsePrint"輸入數據不合法!"EndSelectEndSub執(zhí)行程序,在輸入框中輸入字母"B",則以下敘述中正確的是()。A、程序運行錯B、在窗體上顯示"考核通過!"C、在窗體上顯示"考核不通過!"D、在窗體上顯示"輸入數據不合法!"標準答案:B知識點解析:程序中Ucase函數將輸入的字母轉換為大寫,然后通過Select多分支控制語句選擇輸出不同信息,當輸入字母在"A"到"C"之間時,顯示"考核通過!",輸入的是"D"時顯示"考核不通過!",如果輸入的是"A"到"D"之外的其他字符則顯示"輸入數據不合法!"。程序中輸入字母"B",因此會顯示"考核通過!"。34、窗體上有三個水平滾動條,名稱分別為HSRed、HSGreen和HSBlue,取值范圍均是0~255,代表顏色的三種基色。改變滾動框的位置,可以改變三種基色的值,從而改變窗體的背景色,如下圖所示。程序代碼如下:Dimcolor(3)AsIntegerPrivateSubForm_Load()Callfill(color())EndSubPrivateSubfill(c()AsInteger)Form1.BackColor=RGB(c(1),c(2),c(3))EndSubPrivateSubHSRed_Change()color(1)=HSRed.ValueCallfill(color())EndSubPrivateSubHSGreen_Change()color(2)=HSGreen.ValueCallfill(color())EndSubPrivateSubHSBlue_Change()color(3)=HSBlue.ValueCallfill(color())EndSub關于以上程序,如下敘述中錯誤的是()。A、color是窗體級整型數組B、改變任何一個滾動條滾動框的位置,窗體的背景色將立刻隨之改變C、3個滾動條Change事件過程中只設置了一個color數組元素的值,調用fill過程失敗D、fill函數定義中的形式參數是數組型參數標準答案:C知識點解析:當用Dim語句定義數組時,該語句把數值數組中的全部元素都初始化為0,而把字符串數組中的全部元素都初始化為空串。因此color數組中的元素初始值都為0,沒有空值,過程調用不會失敗。C選項敘述錯。35、窗體上有三個水平滾動條,名稱分別為HSRed、HSGreen和HSBlue,取值范圍均是0~255,代表顏色的三種基色。改變滾動框的位置,可以改變三種基色的值,從而改變窗體的背景色,如下圖所示。[*130]程序代碼如下:Dimcolor(3)AsIntegerPrivateSubForm_Load()Callfill(color())EndSubPrivateSubfill(c()AsInteger)Form1.BackColor=RGB(c(1),c(2),c(3))EndSubPrivateSubHSRed_Change()color(1)=HSRed.ValueCallfill(color())EndSubPrivateSubHSGreen_Change()color(2)=HSGreen.ValueCallfill(color())EndSubPrivateSubHSBlue_Change()color(3)=HSBlue.ValueCallfill(color())EndSub關于以上程序,如下敘述中錯誤的是()。A、ABCDEFB、abcdefC、defdefD、defabc標準答案:C知識點解析:程序中過程Fun的Do循環(huán)的功能是從參數字符串中依次取出后半部分的字符組成一個字符串,然后這個字符串再重復一次由函數返回。函數Len用于返回字符串的長度,過程中字符串的長度做為Do循環(huán)的結束條件。Mid是字符串中部截取函數,用來從指定位置開始截取指定個數的字符。過程中使用Mid(xStr,i+1,1),通過循環(huán)依次取出字符串后半部分的字符。函數返回的字符串經Lcase函數轉換為小寫然后顯示在文本框中。程序中做為Fun過程參數的字符串為"ABCDEF",經處理返回并轉為小寫后為"defdef"。36、在窗體上畫一個命令按鈕和一個文本框(名稱分別為Command1和Text1),并把窗體的KeyPreview屬性設置為True,然后編寫如下代碼:DimSaveAllAsStringPrivateSubForm_Load()ShowText1.Text=""Text1.SetFocusEndSubPrivateSubCommand1_Click()Text1.Text=LCase(SaveAll)+SaveAllEndSubPrivateSubForm_KeyPress(KeyAsciiAsInteger)SaveAll=SaveAll+Chr(KeyAscii)EndSub程序運行后,直接用鍵盤輸入:VB,再單擊命令按鈕,則文本框中顯示的內容為()。A、vbVBB、不顯示任何信息C、VBD、出錯標準答案:A知識點解析:窗體的KeyPreview屬性用于設置或獲取一個值,該值只是判斷按鍵事件傳遞到具有焦點的控件前,窗體是否將接收此事件,該屬性設為True時,窗體將會接收按鍵事件。因此在文本框中輸入"VB"時,會先觸發(fā)Form_KeyPress()事件,該事件將輸入的字符保存到窗體模塊變量SaveAll中,然后才會顯示在文本框中。當單擊命令按鈕時,Lcase函數將變量SaveAll中的字符串"VB"轉換為小寫,為"vb",然后與原字符串連接,即"vb"+"VB",顯示在文本框中則為"vbVB"。37、窗體上有一個Text1文本框,一個Command1命令按鈕,并有以下程序:PrivateSubcommand1_Click()DimnIfText1.Text<>"123456"Thenn=n+1Print"口令輸入錯誤"&n&"次"EndIfEndSub希望程序運行時得到左圖所示的效果,即:輸入口令,單擊"確認口令"命令按鈕,若輸入的口令不是"123456",則在窗體上顯示輸入錯誤口令的次數。但上面的程序實際顯示的是右圖所示的效果,程序需要修改。下面修改方案中正確的是()。A、在Dimn語句的下面添加一句:n=0B、把Print"口令輸入錯誤"&n&"次"改為Print"口令輸入錯誤"+n+"次"C、把Print"口令輸入錯誤"&n&"次"改為Print"口令輸入錯誤"&Str(n)&"次"D、把Dimn改為Staticn標準答案:D知識點解析:本題考查的是動態(tài)變量與靜態(tài)變量。原來的程序中無法使變量n的值保持到下一次的使用,只有D選項符合要求,將n定義為靜態(tài)局部變量,在程序執(zhí)行到該對象的聲明處時被首次初始化,每次執(zhí)行后n的值都會被保存到內存中,所以答案D是正確的;而A選項只是對n賦初值,所以A選項沒有意義;B選項和C選項都沒有達到改進的目的。38、下面程序計算并輸出的是()。PrivateSubCommand1_Click()a=10s=0Dos=s+a*a*aa=a-1LoopUntila<=0PrintsEndSubA、13+23+33+…+103的值B、10?。??。?!+1!的值C、(1+2+3+…+10)3的值D、10個103的和標準答案:A知識點解析:在Do循環(huán)語句中程序大致執(zhí)行過程如下:s=10^3,a=9;s=10^3+9^3,a=8;s=10^+9^3+8^3,a=7;…,依此類推,因此正確的答案為A。39、設有如下通用過程:PublicFunctionf(xAsInteger)DimyAsIntegerx=20y=2f=x*yEndFunction在窗體上畫一個命令按鈕,其名稱為Command1,然后編寫如下事件過程:PrivateSubCommand1_Click()StaticxAsIntegerx=10y=5y=f(x)Printx;yEndSub程序運行后,如果單擊命令按鈕,則在窗體上顯示的內容是()。A、105B、2040C、205D、1040標準答案:B知識點解析:過程f中形參變量x沒有指定傳遞方式,則默認按地址傳遞,會影響實參值。而變量y在按鈕事件過程和f過程中都是局部變量只在本過程中起作用。因此執(zhí)行y=f(x)后,x值在過程中被改變?yōu)?0,而y被賦為過程返回值40。因此程序窗體上會顯示20和40。40、假定有以下通用過程:FunctionFun(nAsInteger)AsIntegerx=n*nFun=x-11EndFunction在窗體上畫一個命令按鈕,其名稱為Command1,然后編寫如下事件過程:PrivateSubCommand1_Click()DimiAsIntegerFori=1To2y=Fun(i)Printy;NextiEndSub程序運行后,單擊命令按鈕,在窗體上顯示的內容是()。A、13B、108C、-10-7D、05標準答案:C知識點解析:國家二級VB機試(選擇題)模擬試卷第3套一、選擇題(本題共40題,每題1.0分,共40分。)1、支持子程序調用的數據結構是()。A、棧B、樹C、隊列D、二叉樹標準答案:A知識點解析:棧支持子程序調用。棧是一種只能在一端進行插入或刪除的線性表,在主程序調用子函數時要首先保存主程序當前的狀態(tài),然后轉去執(zhí)行子程序,最終把子程序的執(zhí)行結果返回到主程序中調用子程序的位置,繼續(xù)向下執(zhí)行,這種調用符合棧的特點,因此本題的答案為A。2、下列敘述中正確的是()。A、棧是"先進先出"的線性表B、隊列是"先進后出"的線性表C、循環(huán)隊列是非線性結構D、有序線性表既可以采用順序存儲結構,也可以采用鏈式存儲結構標準答案:D知識點解析:棧是先進后出的線性表,所以A)錯誤;隊列是先進先出的線性表,所以B)錯誤;循環(huán)隊列是線性結構的線性表,所以C)錯誤。3、對于循環(huán)隊列,下列敘述中正確的是()。A、隊頭指針是固定不變的B、隊頭指針一定大于隊尾指針C、隊頭指針一定小于隊尾指針D、隊頭指針可以大于隊尾指針,也可以小于隊尾指針標準答案:D知識點解析:循環(huán)隊列的隊頭指針與隊尾指針都不是固定的,隨著入隊與出隊操作要進行變化。因為是循環(huán)利用的隊列結構所以對頭指針有時可能大于隊尾指針有時也可能小于隊尾指針。4、算法的空間復雜度是指()。A、算法在執(zhí)行過程中所需要的計算機存儲空間B、算法所處理的數據量C、算法程序中的語句或指令條數D、算法在執(zhí)行過程中所需要的臨時工作單元數標準答案:A知識點解析:算法的空間復雜度是指算法在執(zhí)行過程中所需要的內存空間。所以選擇A。5、算法的有窮性是指()。A、算法程序的運行時間是有限的B、算法程序所處理的數據量是有限的C、算法程序的長度是有限的D、算法只能被有限的用戶使用標準答案:A知識點解析:算法原則上能夠精確地運行,而且人們用筆和紙做有限次運算后即可完成。有窮性是指算法程序的運行時間是有限的。6、對長度為n的線性表排序,在最壞情況下,比較次數不是n(n-1)/2的排序方法是()。A、快速排序B、冒泡排序C、直接插入排序D、堆排序標準答案:D知識點解析:除了堆排序算法的比較次數是O(nlog2n),其他的都是n(n-1)/2。7、在面向對象方法中,不屬于"對象"基本特點的是()。A、一致性B、分類性C、多態(tài)性D、標識唯一性標準答案:A知識點解析:對象有如下一些基本特點:標識唯一性、分類性、多態(tài)性、封裝性、模塊獨立性好。所以選擇A。8、一間宿舍可住多個學生,則實體宿舍和學生之間的聯系是()。A、一對一B、一對多C、多對一D、多對多標準答案:B知識點解析:因為一間宿舍可以住多個學生即多個學生住在一個宿舍中,但一個學生只能住一間宿舍,所以實體宿舍和學生之間是一對多的關系。9、有兩個關系R,S如下:由關系R通過運算得到關系S,則所使用的運算為()。A、選擇B、投影C、插入D、連接標準答案:B知識點解析:投影運算是指對于關系內的域指定可引入新的運算。本題中S是在原有關系R的內部進行的,是由R中原有的那些域的列所組成的關系。所以選擇B。10、將E-R圖轉換為關系模式時,實體和聯系都可以表示為()。A、屬性B、鍵C、關系D、域標準答案:C知識點解析:從E-R圖到關系模式的轉換是比較直接的,實體與聯系都可以表示成關系,E-R圖中屬性也可以轉換成關系的屬性。11、在VB集成環(huán)境中要結束一個正在運行的工程,可單擊工具欄上的一個按鈕,這個按鈕是()。A、

B、

C、

D、

標準答案:D知識點解析:12、設x是整型變量,與函數IIf(x>0,-x,x)有相同結果的代數式是()。A、|x|B、-|x|C、xD、-x標準答案:B知識點解析:IIF函數是條件函數,本題的含義是如果x>0條件成立,即x為正數,就返回-x,即x的負數,否則返回x(它本身),兩種情況都是返回負數。根據這一點,選項B符合要求。故B選項正確。13、以下選項中,不合法的VisualBasic的變量名是()。A、a5bB、_xyzC、a_bD、andif標準答案:B知識點解析:14、14.以下數組定義語句中,錯誤的是()。A、Statica(10)AsIntegerB、Dimc(3,1To4)C、Dimd(-10)D、Dimb(0To5,1To3)AsInteger標準答案:C知識點解析:定義數組有2種格式:第1種格式:數組每一維的只給出下標的上界,即可以使用的下標的最大值。格式為Dim|public|private|static<數組名>(上界,[上界..])[As類型名]形如:Dima(5)AsInterger,Dimb(4,5)AsInteger這種形式,數組各維的下標的下界只能為0或1,而且下標的上界>=下界。本題中C選項下標上界-10<0或1,故A選項正確,C選項錯誤。第2種格式:數組的每一維下標的上界和下界都說明。格式為Dim|public|private|static<數組名>((下界to上界)[,(下界to上界)…])形如:Dima(-2to5)AsIntergerDima(1to3,2to6)AsInterger這種形式,數組各維下標的下界沒有限制,只要保證下標的上界>=下界就行。故D選項正確。以上兩種形式也可以混合使用。故B選項也正確。15、以下關于過程及過程參數的描述中,錯誤的是()。A、調用過程時可以用控件名稱作為實際參數B、用數組作為過程的參數時,使用的是"傳地址"方式C、只有函數過程能夠將過程中處理的信息傳回到調用的程序中D、窗體(Form)可以作為過程的參數標準答案:C知識點解析:過程定義時,形參除了可以是整型、單精度、雙精度等數據類型外,還可以是控件或窗口等對象型。相對應的調用過程時實參也可以是一般數據類型、控件名或窗體。故A、D選項正確。調用過程時,如果過程的參數是數組,則實參傳給形參的是地址,這個地址是用數組名表示的一個符號地址,是數組的起始地址,形參和實參用的是同一個地址,在過程中形參的改變會引起實參的改變。故B選項正確。在過程調用時,不只是函數過程能把過程中處理的信息傳回到調用程序中,Sub過程也可以。Sub過程中形參聲明時前面有關鍵字ByRef或省略ByRef(默認)時,實參和形參之間傳遞的是地址,Sub過程中形參的變化也會引起實參的變化,這樣Sub過程中處理的信息也可以傳回調用程序中。故C選項說法錯誤。16、在窗體上有兩個名稱分別為Text1、Text2的文本框,一個名稱為Command1的命令按鈕。運行后的窗體外觀如圖所示。設有如下的類型和變量聲明:PrivateTypePersonnameAsString*8majorAsString*20EndTypeDimpAsPerson設文本框中的數據已正確地賦值給Person類型的變量p,當單擊"保存"按鈕時,能夠正確地把變量中的數據寫入隨機文件Test2.dat中的程序段是()。A、Open"c:\Test2.dat"ForOutputAs#1Put#1,1,pClose#1B、Open"c:\Test2.dat"ForRandomAs#1Get#1,1,pClose#1C、Open"c:\Test2.dat"ForRandomAs#1Len=Len(p)Put#1,1,pClose#1D、Open"c:\Test2.dat"ForRandomAs#1Len=Len(p)Get#1,1,pClose#1標準答案:C知識點解析:在VB中可以訪問的文件有:順序文件、隨機文件和二進制文件。不同文件存取方式不同,但處理的步驟大致一樣:①用Open語句打開文件,并為文件制定一個文件號。根據文件的的存取方式使用不同的模式打開文件。本題是隨機文件,讀寫的是一條一條的記錄,所以用ForRandom模式打開,記錄的長度為Person類型變量p的長度。②從文件中讀出數據進行處理

溫馨提示

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

評論

0/150

提交評論