VB機(jī)試模擬試卷1(共25題)_第1頁
VB機(jī)試模擬試卷1(共25題)_第2頁
VB機(jī)試模擬試卷1(共25題)_第3頁
VB機(jī)試模擬試卷1(共25題)_第4頁
VB機(jī)試模擬試卷1(共25題)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

VB機(jī)試模擬試卷1(共9套)(共25題)VB機(jī)試模擬試卷第1套一、基本操作題(本題共1題,每題1.0分,共1分。)1、(1)在窗體上繪制一個(gè)名稱為Textl的文本框,然后建立一個(gè)主菜單,標(biāo)題為“操作”,名稱為Op。該菜單有兩個(gè)子菜單,其標(biāo)題分別為“顯示’’和“退出”,其名稱分別為Dis和Exit,編寫適當(dāng)?shù)氖录^程。程序運(yùn)行后,如果單擊“操作”菜單中的“顯示’’命令,則在文本框中顯示“計(jì)算機(jī)考試”;如果單擊“退出”命令,則程序結(jié)束。程序的運(yùn)行情況如圖4—1所示。注意:保存時(shí)必須存放在考生文件夾下,窗體文件名為sj1.frm,工程文件名為sj1.vbp。(2)在名為Form1的窗體上繪制一個(gè)名為Cmd1、標(biāo)題為“顯示”的命令按鈕。編寫適當(dāng)?shù)氖录^程,使程序運(yùn)行后,若單擊“顯示”命令按鈕,則在窗體上顯示“計(jì)算機(jī)等級(jí)考試VisualBasic課程”。程序運(yùn)行情況如圖4—2所示。注意:不要使用任何變量,直接顯示字符串;文件必須存放在考生文件夾中,窗體文件名為sj2.frm,工程文件名為sj2.vbp。標(biāo)準(zhǔn)答案:(1)本題主要考查菜單的使用。在VisualBasic中,菜單也被看作控件,具有屬性和事件,菜單在“菜單邏輯器”對(duì)話框中建立。通過End語句結(jié)束程序的運(yùn)行。①建立界面并設(shè)置控件屬性。菜單及控件屬性設(shè)置見下表:②編寫參考代碼如下:PrivateSubDisClick()Text1.Text="計(jì)算機(jī)考試"EndSubPrivateSubExitClick()EndEndSub③調(diào)試并運(yùn)行程序。④按題目要求存盤。(2)①新建一個(gè)名為Forml的窗體。②單擊丁具箱中的CommandButton控件圖標(biāo),在窗體上拖拉出一個(gè)命令按鈕,在屬性窗口設(shè)置該命令按鈕名稱為Cmdl,標(biāo)題為“顯示”。③打開代碼窗口輸入如下代碼:PrivateSubCmdl_Click()Forml.Print"計(jì)算機(jī)等級(jí)考試VisualBasic課程"EndSub④按要求保存文件即完成本題。知識(shí)點(diǎn)解析:暫無解析二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、(1)在考生文件夾下有一個(gè)工程文件sj3.vbp,相應(yīng)的窗體文件為sj3.frm。其功能是產(chǎn)生40個(gè)0~800的隨機(jī)整數(shù),放入一個(gè)數(shù)組中,然后輸出其中的最小值。程序運(yùn)行后,單擊名稱為Commandl的命令按鈕,標(biāo)題為“輸出最小值”,即可求出其最小值,并在Textl文本框中顯示出來,如圖33—4所示。這個(gè)程序不完整,請(qǐng)把它補(bǔ)充完整,并能正確運(yùn)行。注意:去掉程序中的注釋符“’”,把程序中的“?”改為正確的內(nèi)容,使其實(shí)現(xiàn)上述功能,但不能修改程序中的其他部分。最后把修改后的文件按原文件名存盤。(2)在考生文件夾下有一個(gè)工程文件sj4.vbp,相應(yīng)的窗體文件為sj4.frm,在窗體上有一個(gè)命令按鈕和一個(gè)文本框。程序運(yùn)行后,單擊命令按鈕,即可計(jì)算出100~800范圍內(nèi)能被3整除和能被5整除的整數(shù)的個(gè)數(shù),并在文本框中顯示出來,如圖33—5所示。在窗體的代碼窗口中,已給出了部分程序。注意:請(qǐng)勿改動(dòng)程序中的其他任何內(nèi)容,只將“?”處的代碼編寫完整。最后把修改后的文件按原文件名存盤。標(biāo)準(zhǔn)答案:(1)在數(shù)組求最小值中,定義一個(gè)變量,用來存放數(shù)組中的最小值,在數(shù)組比較開始前,對(duì)變量進(jìn)行賦初始值。在比較中,使用循環(huán)讓變量和數(shù)組中的每個(gè)元素進(jìn)行逐個(gè)比較,每次比較后變量中保存兩個(gè)數(shù)中最小的數(shù),循環(huán)結(jié)束后,變量中存放的數(shù)即為最小值。由于要產(chǎn)生隨機(jī)數(shù),所以要調(diào)用Rnd()函數(shù),Rnd函數(shù)返回小于1,但大于或等于0的值,其語法格式為:Rnd[(number)]。number參數(shù)是可選的,是Single或任何有效的數(shù)值表達(dá)式。number的值決定了Rnd函數(shù)生成隨機(jī)數(shù)的方式。為了生成某個(gè)范圍內(nèi)的隨機(jī)整數(shù),可使用公式:Int((upperbound-lowerbound+1)*Rnd+lowerbound)。這里,upperbound是隨機(jī)數(shù)范圍的上限,而lowerbound則是隨機(jī)數(shù)范圍的下限。具體代碼如下:PrivateSubCommandl_Click()Dima(40)AsLongDimiAsIntegerDimtmpAsIntegerFori=1To40a(i)=Rnd()*(800—0)’產(chǎn)生0~800的隨機(jī)數(shù),放人數(shù)組中Nextitmp=a(1)Fori=2To40Iftmp>a(i)Thentmp=a(i)’獲得最小值EndIfNextiTextl.Text=tmp’在Textl中顯示最小值EndSub單擊按鈕運(yùn)行程序,并按要求保存。(2)本題使用Mod運(yùn)算符來判斷一個(gè)數(shù)是否可以被另一個(gè)數(shù)整除,如果計(jì)算結(jié)果為0,則表示可以整除,否則不能整除。具體代碼如下:PrivateSubCommandl_Click()DimiAsIntegerDimnumAsIntegernum=0Fori=100To800’for循環(huán)從100到800IfiMod3=0AndiMod5=0Thennum=num+1’如果能同時(shí)被3和5整除,計(jì)數(shù)加1EndIfNextiTextl.Text=num’在Textl中輸出個(gè)數(shù)EndSub單擊按鈕運(yùn)行程序,并按要求保存。知識(shí)點(diǎn)解析:暫無解析三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾下有工程文件sj5.vbp及窗體文件sj5.frm。在名為Forml的窗體上有5個(gè)Label控件和2個(gè)命令按鈕,數(shù)據(jù)文件inl3.dat存放學(xué)生的編號(hào)、姓名、性別和體重,如圖13—5所示。程序運(yùn)行后,按“Begin”按鈕后,能從考生文件夾下的inl3.dat中讀出數(shù)據(jù)并把體重大于平均體重的學(xué)生的所有數(shù)據(jù)寫入考生文件夾下的outl3.dat文件中。執(zhí)行完畢,“Begin”按鈕變成“完成”按鈕,且無效。注意:該程序不完整,請(qǐng)?jiān)谟袉柼?hào)“?”的地方填入正確內(nèi)容,然后刪除問號(hào)“?”及所有注釋符“’”,但不能修改其他部分。存盤時(shí)不得改變文件名和文件夾,相應(yīng)的數(shù)據(jù)文件也保存到考生文件夾下,否則沒有成績(jī)。標(biāo)準(zhǔn)答案:根據(jù)題目1.打開題目所給工程文件。2.打開代碼窗口輸入如下代碼:PrivateSubCmdlClick()DimiAsIntegerDimtotalAsIntegerDimaverAsSingleDimnum(10),namstring(10),sexstring(10),wages(10)MyFile=App.Path&"\"&"inl3.dat"MyFile2=App.Path&"\"&"outl3.dat"OpenMyFilelForInputAs#1OpenMyFile2ForOutputAs#2Fori=1To10Input#l,num(i),namstring(i),sexstring(i),wages(i)total=total+wages(i)Nextiaver=total/10Fori=1To10Ifwages(i)>averThenWrite#2,num(i),namstring(i),sexstring(i),wages(i)NextiCmdl.Caption="完成"Cmd1.Enabled=FalseEndSub3.按要求保存文件即完成本題。知識(shí)點(diǎn)解析:暫無解析VB機(jī)試模擬試卷第2套一、基本操作題(本題共1題,每題1.0分,共1分。)1、請(qǐng)根據(jù)以下各小題的要求設(shè)計(jì)VisualBasic應(yīng)用程序(包括界面和代碼)。(1)在名稱為Forml的窗體上畫一個(gè)標(biāo)簽,其名稱為L(zhǎng)abell,標(biāo)題為“等級(jí)考試”,BorderStyle屬性為1,可以根據(jù)標(biāo)題自動(dòng)調(diào)整大??;然后再畫一個(gè)命令按鈕,其名稱和標(biāo)題均為Commandl,編寫適當(dāng)?shù)氖录^程。程序運(yùn)行后,其界面如圖1-8l(a)所示,此時(shí)如果單擊命令按鈕,則標(biāo)簽消失,同時(shí)用標(biāo)簽的標(biāo)題作為命令按鈕的標(biāo)題,如圖1-81(b)所示。注意:存盤時(shí)必須存放在考生文件夾下,工程文件名為sjtl.vbp。窗體文件名為sjtl.frm。(2)在名稱為FormI的窗體上畫一個(gè)文本框,其名稱為Textl,初始內(nèi)容為空白;然后再畫三個(gè)單選按鈕,其名稱分別為OPl、Op2和OP3,標(biāo)題分別為北京、西安和杭州,編寫適當(dāng)?shù)氖录^程。程序運(yùn)行后,如果選擇單選按鈕Opl,則在文本框中顯示“頤和園”;如果選擇單選按鈕Op2,則在文本框中顯示“兵馬俑”;如果選擇單選按鈕Op3,則在文本框中顯示“西湖”。程序的運(yùn)行情況如圖1-82所示。要求程序中不得使用變量,事件過程中只能寫一條語句。注意:存盤時(shí)必須存放在考生文件夾下,工程文件名為sjt2.vbp,窗體文件名為sjt2.frm。標(biāo)準(zhǔn)答案:第1小題【操作步驟】步驟1;新建一個(gè)“標(biāo)準(zhǔn)EXE”工程,如表2-42在窗體中畫出控件并設(shè)置其相關(guān)屬性。步驟2:在代碼編輯窗口編寫以下事件過程。參考代碼:PriVateSubCommand1_Click()Commandl.Caption=LabellLabel1.Visible=FalseEndSub步驟3:按要求將文件保存至考生文件夾中。第2小題【操作步驟】步驟1:新建一個(gè)“標(biāo)準(zhǔn)EXB”工程,在窗體Forml上畫一個(gè)文本框和三個(gè)單選按鈕,其屬性及值如表2-43所示。步驟2:在代碼編輯窗口。編寫三個(gè)單選按鈕的單擊事件過程。參考代碼:PrivateSubOp1_Click()Textl="頤和因"EndSubPrivateSubOp2_Click()Text1.Text="兵馬俑"EndSubPrivateSubOp3_Click()Textl.Text="西湖"EndSub步驟3:按要求將文件保存至考生文件夾中。知識(shí)點(diǎn)解析:第1小題①標(biāo)簽控件(Label)常用于顯示用戶不能直接改變的信息,Caption屬性用來設(shè)置其顯示的文本。標(biāo)簽的BorderStyle屬性用于設(shè)置標(biāo)簽的邊框樣式,值為0表示無邊框,值為1表示有固定單邊框。AutoSize屬性用來確定是否根據(jù)Caption屬性指定的標(biāo)題自動(dòng)調(diào)整標(biāo)簽的大小,可以設(shè)置為True或False。本題需要在窗體上畫出控件并相應(yīng)設(shè)置其屬性,然后編寫命令按鈕的單擊事件,使得標(biāo)簽的Visible屬性為False并且改變命令按鈕的Caption屬性。第2小題本題只需在三個(gè)單選按鈕的Click事件過程中,分別為文本框的Text屬性賦予相應(yīng)內(nèi)容即可。二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、(1)在考生文件夾下有一個(gè)工程文件sjt3.vbp,其功能是:①單擊“讀數(shù)據(jù)”按鈕,則把考生文件夾下in3.dat文件中的100個(gè)正整數(shù)讀入數(shù)組a中;②單擊“統(tǒng)計(jì)”按鈕,則找出這100個(gè)正整數(shù)中的所有完全平方數(shù)(一個(gè)整數(shù)若是另外一個(gè)整數(shù)的平方,那么它就是完全平方數(shù)。例如,36=62,所以36就是一個(gè)完全平方數(shù)),并將這些完全平方數(shù)的最大值與個(gè)數(shù)分別顯示在文本框Textl、Text2中。在給出的窗體文件中有了全部控件(如圖1-4l所示),但程序不完整,請(qǐng)將程序中的注釋符去掉,把?號(hào)改為正確的內(nèi)容,實(shí)現(xiàn)上述功能。注意:考生不得修改窗體文件已存在的控件和程序,最后將程序原文件名存盤。(2)在考生文件夾下有一個(gè)工程文件sjt4.vbp,其窗體上有兩個(gè)標(biāo)題分別為“添加”和“退出”的命令按鈕,一個(gè)內(nèi)容為空的列表框Listl。請(qǐng)畫一個(gè)標(biāo)簽,其名稱為L(zhǎng)abell,標(biāo)題為“請(qǐng)輸入編號(hào)”;再畫一個(gè)名稱為Textl,初始值為空的文本框,如圖1-42所示。程序功能如下;①系統(tǒng)啟動(dòng)時(shí),自動(dòng)向列表框添加一個(gè)編號(hào)信息“a0001”。②系統(tǒng)運(yùn)行時(shí),在文本框。Textl中輸入一個(gè)編號(hào),并單擊“添加”按鈕時(shí),如果該編號(hào)與已存在于列表框中的其他編號(hào)不重復(fù),則將其添加到列表框Listl已有項(xiàng)目之后:否則,將彈出“不允許重復(fù)輸入,請(qǐng)重新輸入l”對(duì)話框,單擊該對(duì)話框中的“確定”按鈕,可以重新輸入。③單擊“退出”按鈕,則結(jié)束程序運(yùn)行。要求:請(qǐng)去掉程序中的注釋符,把程序中的?改為正確的內(nèi)容,使其實(shí)現(xiàn)上述功能,但不能修改窗體文件中已經(jīng)存在的控件和程序。最后把修改后的文件按原文件名存盤。標(biāo)準(zhǔn)答案:第1小題【操作步驟】步驟1:打開考生文件夾下的本題工程文件sit3.vbp,去掉程序中的注釋符“’”,將問號(hào)“?”改為正確的內(nèi)容。參考代碼:Ifx=m^2Thenis_square=flagIfa(k)>maxThenTextl.Text=maxText2.Text=num步驟2:按要求將文件保存至考生文件夾中。第2小題【操作步驟】步驟1:打開考生文件中的本題工程文件sjt4.vbp,如表2-22在窗體中畫出控件并設(shè)置其相關(guān)屬性。步驟2:在代碼編輯窗口,去掉程序中的注釋符“’”,將問號(hào)“?”改為正確的內(nèi)容。參考代碼:Listl.AddItem"a0001"Fori=0ToListl.ListCount-1LiStl.ListIndex=iListl.AddItemTextl.TextEnd步驟3:按要求將文件保存至考生文件夾中。知識(shí)點(diǎn)解析:第1小題Sqr(N)求平方根函數(shù),用于返回N的算術(shù).平方根。issquare()函數(shù)用于判斷參數(shù)x是否為完全平方數(shù),方法是從1到x的平方根進(jìn)行循環(huán),依次判斷x是否能等于循環(huán)變量的平方,若等于則退出循環(huán),返回True,若循環(huán)結(jié)束后都沒有等于某個(gè)循環(huán)變量的平方則返回False。求完全平方數(shù)的最大值,只需要先預(yù)設(shè)最大值為0,然后在循環(huán)中每次找到一個(gè)完全平方數(shù)就將其與最大值比較,若大于預(yù)設(shè)最大值則令其為新的最大值,同時(shí)令計(jì)數(shù)器加1,循環(huán)結(jié)束后可得最大值與個(gè)數(shù)。第2小題若要在系統(tǒng)啟動(dòng)時(shí),自動(dòng)向列表框添加一個(gè)編號(hào)信息“a0001”,需要在窗體的Load事件中調(diào)用列表框的Addltem方法向列表框中添加列表項(xiàng)。在“添加”按鈕的單擊事件中,需要判斷輸入的值是否在列表框中已存在,為了實(shí)現(xiàn)這個(gè)功能,需要遍歷整個(gè)列表框,其循環(huán)條件為Fori=0ToListl.ListCount-1;在循環(huán)中首先令Listlndex屬性值為i,這樣第i個(gè)列表項(xiàng)的內(nèi)容就是列表框的Text屬性值,可以與文本框中的內(nèi)容進(jìn)行比較,若已經(jīng)存在則彈出提示信息,并退出事件過程,若循環(huán)結(jié)束后還沒有重復(fù),則調(diào)用列表框的AddItem方法將文本框的內(nèi)容加入列表框。在“退出”按鈕的單擊事件過程中,使用End語句結(jié)束整個(gè)程序的運(yùn)行。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、考生文件夾下的工程文件sjt5.vbp中的窗體如圖1-215所示??忌募A下的隨機(jī)文件in5.dat中有20條記錄,每條記錄含姓名和三個(gè)分?jǐn)?shù)(均為100以內(nèi)的正整數(shù))。在程序中已經(jīng)定義了類型Recordtype,此類型變量可以存放一條記錄。要求如下:①請(qǐng)為“計(jì)算最大最小值”按鈕編寫Click事件過程,其功能是:讀取文件中的記錄,計(jì)算每人的總分,找出其中最大總分和最小總分,分別放入變量maxval,minval中(這兩個(gè)變量已經(jīng)給出,不得修改)。②運(yùn)行程序,單擊“計(jì)算最大最小值”按鈕后再單擊“存盤”按鈕。注意:考生不得修改窗體文件中已經(jīng)存在的控件和程序,在結(jié)束程序運(yùn)行之前,必須依次單擊“計(jì)算最大最小值”、“存盤”按鈕,否則無成績(jī)。最后,程序按原文件名存盤。標(biāo)準(zhǔn)答案:【操作步驟】步驟l:打開考生文件中的本題工程文件sjt5.vbp,在代碼編輯窗口的適當(dāng)位置編寫代碼。參考代碼:PrivateSubCommandl_Click()DimSAsRecordtypeOpen"in5.dat"ForRandomAs#1Len=Len(S)maxval=0minval=300Fork=1To20Get#1,,Ssumval=s.a(chǎn)1+s.a(chǎn)2+s.a(chǎn)3Ifsumval>maxvalThenmaxval=sumvalIfsumval知識(shí)點(diǎn)解析:①Type語句用于在模塊級(jí)別中定義一個(gè)用戶自己的數(shù)據(jù)類型,其本質(zhì)上是一個(gè)數(shù)據(jù)類型集合,它含有一個(gè)或一個(gè)以上的成員,每個(gè)成員可以被定義為不同的數(shù)據(jù)類型。聲明白定義類型變量后,可通過“變量名.成員名”來訪問自定義變量中的元素。②用Open語句打開隨機(jī)文件,其語法格式為:OpenFileNameforRandomas#FileNumberLen=記錄長(zhǎng)度。記錄長(zhǎng)度是一條記錄實(shí)際所占字節(jié)數(shù),可用Len(記錄變量名)函數(shù)獲?。篏et#語句用于從文件中讀出某記錄號(hào)的記錄,格式為:Get撐FileNumber,[RecordNuber],Var;Put#語句用于把記錄按指定記錄號(hào)寫入文件,格式為:Put#FileNumber,[RccordNuber],Var。本題原程序設(shè)計(jì)思路:在“計(jì)算最大最小值”命令按鈕的單擊事件過程中,先用Open語句打開考生文件夾下的隨機(jī)文件in5.txt;然后預(yù)定義最大值為O,最小值為3000門課程總成績(jī)不可能超過300),在For循環(huán)中,依次使用Get語句取出記錄內(nèi)容到自定義數(shù)據(jù)類型變量s,然后將s的各元素累加起來,并將總分(s中各元素的累加和)和預(yù)定義的最大值以及最小值進(jìn)行比較,如果總分大于最大值則將其存入最大值,如果總分小于最小值則將其存入最小值,然后進(jìn)行下一次循環(huán)判斷下一條記錄。VB機(jī)試模擬試卷第3套一、基本操作題(本題共1題,每題1.0分,共1分。)1、注意:下面出現(xiàn)的“考生文件夾”均為c;\wexam\25160001。請(qǐng)根據(jù)以下各小題的要求設(shè)計(jì)VisualBasic應(yīng)用程序(包括界面和代碼)。(1)在窗體上建立一個(gè)二級(jí)菜單,該菜單含有“文件”和“幫助”(名稱分別為vbFile和vbHelp)兩個(gè)主菜單項(xiàng),其中“文件”菜單包括“打開”、“關(guān)閉”和“退出”三個(gè)子菜單項(xiàng)(名稱分別為vbOpen、vbClose和vbExit),如圖1-1所示。只建立菜單,不必定義其事件過程。注意:保存時(shí)必須存放在考生文件夾下,窗體文件名為sjt1.frm,工程文件名為sjt1.vbp。(2)在名為Form1的窗體上畫一個(gè)框架,名稱為Frm1,標(biāo)題為“框架”,高度為2500,寬度為4000,框架內(nèi)建立一文本框,距左邊框600,距框架的上邊框1200,文本框中的初始內(nèi)容設(shè)置為“文本框”。如圖1-2所示。注意:保存時(shí)必須存放在考生文件夾下,窗體文件名為sjt2.frm,工程文件名為sjt2.vbp。標(biāo)準(zhǔn)答案:(1)在VisualBasic中,菜單項(xiàng)通過菜單編輯器來建立。解題步驟:第一步:打開“菜單編輯器”窗口,建立菜單項(xiàng)。用到的菜單項(xiàng)及其屬性見表1-1。第二步:調(diào)試并運(yùn)行程序。第三步:按題目要求存盤。(2)在窗體上建立好控件后,再按題目要求設(shè)置各自的屬性即可。需要指出的是在框架里的控件需要畫出框架后,單擊工具箱里的控件然后在框架里拖動(dòng)畫出所需控件,不可以用雙擊的方法,否則所需的控件放不到框架里。窗體中的控件的具體位置由控件的Top、Left屬性設(shè)置,大小由屬性HeightWidth設(shè)置。解題步驟:第一步:設(shè)置框架的Height、Width屬性分別為2500,4000;文本框的Left、Top屬性值分別為600,1200。(以上均可在屬性欄里沒置)第二步:調(diào)試并運(yùn)行程序。第三步:按題目要求存盤。知識(shí)點(diǎn)解析:暫無解析二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、注意:下面出現(xiàn)的“考生文件夾”均為c:\wexam\25160001。(1)在名稱為Form1的窗體上建立兩個(gè)主菜單,其標(biāo)題分別為“文件”和“幫助”,名稱分別為vbFile和vbHelp,在“文件”菜單下有3個(gè)子菜單項(xiàng),標(biāo)題分別為“新建”、“打開”和“存盤”,名稱分別為vbNew、vbOpen和vbSave。要求程序運(yùn)行后,如果選中“文件”下的某個(gè)菜單項(xiàng),則通過MsgBox對(duì)話框顯示該菜單項(xiàng)的標(biāo)題,如圖3-3所示。注意:保存時(shí)必須存放在考生文件夾下,窗體文件名為sjt3.frm,工程文件名為sjt3.vbp。(2)在窗體上建立一個(gè)名稱為Text1的文本框,再建立一個(gè)名稱為Cmd1,標(biāo)題為“計(jì)算”的命令按鈕,如圖3-4所示。要求程序運(yùn)行后,單擊命令按鈕,將計(jì)算100-200之間所有素?cái)?shù)之和,在文本框中顯示結(jié)果,同時(shí)把結(jié)果存入文件out.txt中。(在考生文件夾中有標(biāo)準(zhǔn)模塊mode.bas,其中的putdata過程可以把結(jié)果存入文件,而isprime函數(shù)可以判斷整數(shù)x是否為素?cái)?shù),如果是素?cái)?shù),則函數(shù)返回True,否則返回False,考生可以把該模塊文件添加到自己的工程中。)注意:保存時(shí)必須存放在考生文件夾下,窗體文件名為sjt4.frm,工程文件名為sjt4.vbp,結(jié)果存入out.txt文件。標(biāo)準(zhǔn)答案:(1)在VisualBasic中,菜單項(xiàng)通過菜單編輯器來建立;選擇菜單則是觸發(fā)其Click事件。MsgBox函數(shù)在對(duì)話框中顯示消息,等待用戶單擊按鈕,并返回1個(gè)Integer告訴用戶單擊哪一個(gè)按鈕。語法:MsgBox(prompt[,buttons][,title][,helpfile,context])MsgBox函數(shù)的語法具有以下幾個(gè)命名參數(shù):Prompt必需的。字符串表達(dá)式,作為顯示在對(duì)話框中的消息。Buttons可選的。數(shù)值表達(dá)式是值的總和,指定顯示按鈕的數(shù)目及形式。Title可選的。在對(duì)話框標(biāo)題欄中顯示的字符串表達(dá)式。如果省略title,則將應(yīng)用程序名放在標(biāo)題欄中。Helpfile可選的。字符串表達(dá)式,識(shí)別用來向?qū)υ捒蛱峁┥舷挛南嚓P(guān)幫助的幫助文件。Context可選的。數(shù)值表達(dá)式,由幫助文件的作者指定給適當(dāng)?shù)膸椭黝}的幫助上下文編號(hào)。解題步驟:第一步:建立菜單項(xiàng)。程序中用到的菜單項(xiàng)及其屬性見表3-2。第二步:編寫程序代碼。參考代碼:PrivateSubvbNew_Click()MsgBox“新建”,vbOKOnlyEndSubPrivateSubvbOpen_Click()MsgBox“打開”,vbOKOnlyEndSubPrivateSubvbSave_Click()MsgBox“存盤”,vbOKOnlyEndSub第三步:調(diào)試并運(yùn)行程序。第四步:按題目要求存盤。(2)在窗體上建立好控件后,先設(shè)置控件的屬性值,再編寫事件過程。文本框中顯示的內(nèi)容由Text屬性設(shè)置,命令按鈕的標(biāo)題由Caption屬性設(shè)置,單擊命令按鈕觸發(fā)Click事件。解題步驟:第一步:建立菜單項(xiàng)。程序中用到的控件及其屬性見表3-3。第二步:編寫程序代碼。參考代碼:PrivateSubCmd1_Click()DimiAsIntegerDimtempAsLongtemp=0Fori=100To200Ifisprime(i)Thentemp=temp+iEndIfNextText1.Text=tempputdata"out.txt",tempEndSub標(biāo)準(zhǔn)模塊代碼:OptionExplicitSubputdata(t_FileNameAsString,TStrAsVariant)DimsFileAsStringsFile="\"&tFileNameOpenApp.Path&sFileForOutputAs#1Print#1,T_StrClose#1EndSubFunctionisprime(t_IAsInteger)AsBooleanDimJAsIntegerisprime=FalseForJ=2TotI/2IftIModJ=0ThenExitForNextJIfJ>tI/2Thenisprime=TrueEndFunction第三步:調(diào)試并運(yùn)行程序。第四步:按題目要求存盤。知識(shí)點(diǎn)解析:暫無解析三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾中有工程文件sjt5.vbp及其窗體文件sjt5.frm,該程序是不完整的,請(qǐng)?jiān)谟?號(hào)的地方填入正確內(nèi)容,然后刪除?及所有注釋符(即’號(hào))但不能修改其他部分。存盤時(shí)不得改變文件名和文件夾。本題描述如下:在名稱為Form1的窗體上有一個(gè)文本框,名稱為Text1,MultiLine屬性為True,ScrollBars屬性為2;兩個(gè)命令按鈕,名稱分別為Cmd1和Cmd2,標(biāo)題分別為“讀入數(shù)據(jù)”和“計(jì)算保存”,如圖2-6所示。要求程序運(yùn)行后,如果單擊“讀入數(shù)據(jù)”按鈕,則讀入“in.txt”文件中的100個(gè)整數(shù),放入一個(gè)數(shù)組中(數(shù)組下界為1),同時(shí)在文本框中顯示出來;如果單擊“計(jì)算保存”按鈕,則計(jì)算數(shù)組中大于或等于400并且小于800的所有數(shù)之和,把求和結(jié)果在文本框Text1中顯示出來,同時(shí)把結(jié)果存入考生文件夾中的文件result.txt中。(在prog.bas中的putdata過程可以把結(jié)果存入result.txt文件)。注意:文件必須存放在考生文件夾下,窗體文件名為sjt5.frm,工程文件名為sjt5.vbp,計(jì)算結(jié)果存入result,txt文件中,否則沒有成績(jī)。標(biāo)準(zhǔn)答案:文本框顯示的內(nèi)容由Text屬性設(shè)置;按鈕的標(biāo)題由Caption屬性設(shè)置,單擊命令按鈕觸發(fā)Click事件;在本題中涉及到文件的操作,讀入順序文件以順序的方式打開,用Input#語句讀取數(shù)據(jù),另外需要注意的是對(duì)文件操作完后,一定要關(guān)閉文件。解題步驟:第一步:建立界面并設(shè)置控件屬性。程序中用到的控件及其屬性見表2-1。第二步:編寫程序代碼。程序提供的代碼:窗體代碼Dimi(1To100)AsIntegerPrivateSubCmd1_Click()DimjAsIntegerj=0OpenApp.Path&"\in.txt"ForInputAs#1Forj=1To100’Input#1,i(?)NextClose#1Forj=1To100Text1.Text=Text1.Text&i(j)&Space(5)NextEndSubPrivateSubCmd2_Click()DimtempAsLongDimjAsInteger’For?=1To100Ifi(j)>=400Andi(j)<800Thentemp=temp+i(j)EndIfNext’Text1.?=tempputdatatempEndSub標(biāo)準(zhǔn)模塊代碼:Subputdata(ByValaAsInteger)DimsFileAsStringsFile="\result.txt"OpenApp.Path&sFileForOutputAs#1Print#1,a;Close#1EndSub參考代碼:Dimi(1To100)AsIntegerPrivateSubCmd1_Click()DimjAsIntegerj=0OpenApp.Path&"\in.txt"ForInputAs#1Forj=1To100Input#1,i(j)NextClose#1Forj=1To100Text1.Text=Text1.Text&i(j)&Space(5)NextEndSubPrivateSubCmd2_Click()DimtempAsLongDimjAsIntegerForj=1To100Ifi(j)>=400Andi(j)<800Thentemp=temp+i(j)EndIfNextText1.Text=tempputdatatempEndSub第三步:調(diào)度并運(yùn)行程序。第四步:按題目要求存盤。知識(shí)點(diǎn)解析:暫無解析VB機(jī)試模擬試卷第4套一、基本操作題(本題共1題,每題1.0分,共1分。)1、請(qǐng)根據(jù)以下各小題的要求設(shè)計(jì)VisualBasic應(yīng)用程序(包括界面和代碼)。(1)在名稱為Forml的窗體上畫一個(gè)名稱為Commandl的命令按鈕,標(biāo)題為“打開文件”,再畫一個(gè)名稱為CDI的通用對(duì)話框。程序運(yùn)行后,如果單擊命令按鈕,則彈出打開文件對(duì)話框。請(qǐng)按下列要求設(shè)置屬性和編寫代碼:①設(shè)置適當(dāng)屬性,使對(duì)話框的標(biāo)題為“打開文件”;②設(shè)置適當(dāng)屬性,使對(duì)話框的“文件類型”下拉式組合框中有兩行:“文本文件”、“所有文件”(如圖1-142所示)。默認(rèn)的類型是“所有文件”;③編寫命令按鈕的事件過程,使得單擊按鈕可以彈出打開文件對(duì)話框。要求:程序中不得使用變量,事件過程中只能寫一條語句。注意:存盤時(shí)必須存放在考生文件夾下,工程文件名為sjt1.vbp,窗體文件名為sjt1.frm。(2)在名稱為Forml的窗體上畫一個(gè)命令按鈕,名稱為Commandl,其標(biāo)題為“移動(dòng)本按鈕”。如圖1-143所示。編寫適當(dāng)?shù)氖录^程,使得程序運(yùn)行時(shí),每單擊按鈕一次,按鈕向左移動(dòng)100。要求:程序中不得使用變量,事件過程中只能寫一條語句。注意:存盤時(shí)必須存放在考生文件夾下,工程文件名為sjt2.vbp,窗體文件名為sjl2.frm。標(biāo)準(zhǔn)答案:第l小題【操作步驟】步驟l:新建一個(gè)“標(biāo)準(zhǔn)EXE”工程,選擇【工程】→【部件】命令,打開“部件”對(duì)話框,從其列表中選中“MicroSoftCommon.DialogControl6.0”項(xiàng)目,單擊“確定”按鈕。步驟2:在窗體Forml中加入一個(gè)命令按鈕和一個(gè)通用對(duì)話框,其相關(guān)屬性設(shè)置如表2-80所示。步驟3:在代碼編輯窗口中,編寫“打開文件”按鈕的單擊事件過程:參考代碼:PriVateSubCommandl_Click()CD1.ShowOpenEndSub步驟4:按要求將文件保存至考生文件夾中。第2小題【操作步驟】步驟1:新建一個(gè)“標(biāo)準(zhǔn)EXE"工程,畫出一個(gè)名為Commandl的命令按鈕,并且設(shè)置其Caption屬性為“移動(dòng)本按鈕”。步驟2:在代碼編輯窗口編寫命令按鈕的單擊事件過程。參考代碼:PriVateSubCommandl_Click()Command1.Left=Commandl.Left-100EndSub步驟3:按要求將文件保存至考生文件夾中。知識(shí)點(diǎn)解析:第l小題通用對(duì)話框的DialogTitle屬性用于返回或設(shè)置該對(duì)話框標(biāo)題欄上所顯示的文本。要在單擊按鈕時(shí)彈出“打開文件”對(duì)話框,只需在“打開”按鈕的Click事件過程中調(diào)用通用對(duì)話框的ShowOpen方法即可。第2小題本題只需要在命令按鈕的單擊事件中為命令按鈕的Left屬性減100即可。二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、(1)考生文件夾中有工程文件sjt3.vbp。在窗體上有名稱為Combo1的組合框,請(qǐng)?jiān)O(shè)置該組合框的屬性,使該組合框只能用于選擇操作,不能輸入文本。窗體上還有兩個(gè)標(biāo)題分別為“輸入正整數(shù)”、“判斷”的命令按鈕。程序運(yùn)行時(shí)在組合框中選中一項(xiàng),如圖1-32(a)所示,單擊“輸入正整數(shù)”按鈕,通過輸入對(duì)話框輸入一個(gè)正整數(shù),再單擊“判斷”按鈕,則按照選定的選項(xiàng)內(nèi)容,將判斷結(jié)果顯示在信息框中。如圖1-32(b)所示的是輸入56且選中的組合框選項(xiàng)為“判奇偶數(shù)”時(shí)顯示的信息框。在給出的窗體文件中已經(jīng)有了全部控件,但程序不完整,要求:按照題目要求設(shè)置組合框的有關(guān)屬性,去掉程序中的注釋符,把程序中的?改為正確的內(nèi)容。注意:考生不得修改窗體文件中已經(jīng)存在的程序。最后程序按原文件名存盤。(2)在考生目錄下有一個(gè)工程文件sjt4.vbp。窗體上有一大一小兩個(gè)名稱分別為Shape2、Shapel的Shape控件。請(qǐng)?jiān)趯傩源翱谥袑hapel控件設(shè)置為圓形,并將其顏色設(shè)置為紅色(顏色值為&H000000FF&),如圖1-33所示。要求:當(dāng)單擊窗體時(shí),Shapel移動(dòng)到矩形(即Shape2)左上角,再次單擊窗體,則Shapcl移動(dòng)到矩形的右下角。在給出的窗體文件中已經(jīng)有了全部控件,但程序不完整。要求:在屬性窗口中設(shè)置有關(guān)的屬性值,去掉程序中的注釋符,把程序中的?改為正確的內(nèi)容。注意:不能修改程序的其他部分和控件屬性。最后把修改后的文件按原文件名存盤。標(biāo)準(zhǔn)答案:第1小題【操作步驟】步驟l:打開考生文件中的本題工程文件sjt3.vbp,將組合框的Style屬性設(shè)置為2。步驟2:在代碼編輯窗口,去掉程序中的注釋符們”,將問號(hào)“?”改為正確的內(nèi)容。參考代碼:SelectCaseComb01.ListIndexMsgBoxStr(x)&fl(x)MsgBoxStr(x)&f2(x)PrivateFunctionf2(ByValxAsInteger)AsStringIfxMod7=0Then步驟3:按要求將文件保存至考生文件夾中。第2小題【操作步驟】步驟1:打開考生文件中的本題工程文件sjt4.vbp,將Shapel控件的Shape屬性設(shè)置為3,BackColor屬性設(shè)置為&H000000FF&。步驟2:在代碼編輯窗口,去掉程序中的注釋符“’”,將問號(hào)“?”改為正確的內(nèi)容。參考代碼:PrivateFlagAsBooleanShapel.Top=Shape2.Top+Shape2.Height-Shapel.HeightShapel.Left=Shape2.Left+Shape2.Width-Shapel.Width步驟3:按要求將文件保存至考生文件夾中。知識(shí)點(diǎn)解析:第1小題本題源代碼中給出了兩個(gè)函數(shù),f1函數(shù)的作用是判斷參數(shù)的奇偶性并返回判斷結(jié)果,其返回值為字符型;f2函數(shù)的作用是判斷參數(shù)能否被7整除,其返回值也為字符型。在“判斷”命令按鈕的單擊事件中,首先根據(jù)組合框的Listlndex值判斷選中的是組合框中的哪一項(xiàng),如果ListIndex值為0則調(diào)用fl函數(shù),否則調(diào)用f2函數(shù)。第2小題本題原程序中,在窗體的單擊事件中,要求實(shí)現(xiàn)圓形在左上角和右下角之間來回切換,需要設(shè)置一個(gè)全局布爾型變量flag,每次單擊窗體之后將其取反,通過flag的值來判斷是需要將圓形移動(dòng)到哪個(gè)位置。要移動(dòng)到矩形的右下角,需要令其Top屬性等于Shape2.Top+Shape2.Height-Shapel.Height,Left屬性等于Shape2.Left+Shape2.WidthShapel.Width。三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、考生文件夾下的工程文件sjt5.Vbp中有一個(gè)初始內(nèi)容為空的文本框Textl,兩個(gè)標(biāo)題分別是“讀數(shù)據(jù)”和“計(jì)算”的命令按鈕;請(qǐng)畫一個(gè)標(biāo)題為“各行平均數(shù)的最大值為”的標(biāo)簽LabeL2,再畫一個(gè)初始內(nèi)容為空的文本框Text2,如圖1-195所示。程序功能如下:①單擊“讀數(shù)據(jù)”按鈕,則將考生文件夾下in5.dat文件的內(nèi)容讀入20行5列的二維數(shù)組a中,并同時(shí)顯示在Textl文本框內(nèi);②單擊“計(jì)算”按鈕,則自動(dòng)統(tǒng)計(jì)二維數(shù)組a中各行的平均數(shù),并將這些平均數(shù)中的最大值顯示在Text2文本框內(nèi)?!白x數(shù)據(jù)”按鈕的Click事件過程已經(jīng)給出,請(qǐng)編寫“計(jì)算”按鈕的Click事件過程實(shí)現(xiàn)上述功能。注意:考生不得修改窗體文件中已經(jīng)存在的控件和程序,在結(jié)束程序運(yùn)行之前,必須用“計(jì)算”按鈕進(jìn)行計(jì)算,且必須用窗體右上角的關(guān)閉按鈕結(jié)束程序,否則無成績(jī)。最后,程序按原文件名存盤。標(biāo)準(zhǔn)答案:【操作步驟】步驟l:打開考生文件中的本題工程文件sjt5.vbp,在窗體。Forml中畫一個(gè)標(biāo)簽和一個(gè)文本框,其屬性及值如表2-111所示。步驟2:打開代碼編輯窗口,在指定位置編寫以下代碼:參考代碼:Fori=1To20Sum=0Forj=1To5Sum=Sum+a(i,j)NextAvg=Sum/5Ifi=1ThenMax=AvgElseIfMax鍵運(yùn)行程序,先單擊“讀數(shù)據(jù)”按鈕,接著單擊“計(jì)算”按鈕,然后單擊窗體右上角的關(guān)閉按鈕結(jié)束程序。知識(shí)點(diǎn)解析:本題可利用一個(gè)嵌套的For循環(huán)來完成計(jì)算工作:在外循環(huán)(循環(huán)變量的取值為1~20)體中,先初始設(shè)置記錄每行數(shù)據(jù)之和的變量Sum的初值為O,接著通過內(nèi)循環(huán)(循環(huán)變量的取值為1~5)體完成對(duì)每行數(shù)據(jù)的累加工作。內(nèi)循環(huán)結(jié)束后,用表達(dá)式Avg=Sum/5計(jì)算出該行的平均值。如果是第一次執(zhí)行外循環(huán)的循環(huán)體,則將當(dāng)前Avg的值記錄在變量Max中,否則僅在其他行Avg值大于Max的值時(shí),才將其記錄在變量Max中。嵌套For循環(huán)結(jié)束時(shí),變量Max的值即為每行平均數(shù)中的最大值,將其顯示在文本框txtMax中。VB機(jī)試模擬試卷第5套一、基本操作題(本題共1題,每題1.0分,共1分。)1、1.請(qǐng)根據(jù)以下各題的要求設(shè)計(jì)VisualBasic應(yīng)用程序(包括界面和代碼)。1.在窗體(名稱為Form1)上畫兩個(gè)命令按鈕,其名稱分別為C1和C2,標(biāo)題分別為“命令按鈕1”和“命令按鈕2”,編寫適當(dāng)?shù)氖录^程。程序運(yùn)行后,“命令按鈕2”隱藏,此時(shí)如果單擊“命令按鈕1”,則“命令按鈕2”出現(xiàn),“命令按鈕1”隱藏;而如果單擊“命令按鈕2”,則“命令按鈕1”出現(xiàn),“命令按鈕2”隱藏。程序的運(yùn)行情況如圖1—1所示。注意;存盤時(shí),工程文件名為sjt1.vbp.窗體文件名為sjt1.frm。2.在Form1的窗體上畫一個(gè)命令按鈕,其名稱為C1,標(biāo)題為“顯示”;再畫一個(gè)文本框,其名稱為Text1,編寫適當(dāng)?shù)氖录^程。程序運(yùn)行后,在窗體加載時(shí)使文本框不可見,如果雙擊窗體,則文本框出現(xiàn);此時(shí)如果單擊命令按鈕,則在文本框中顯示“等級(jí)考試”。程序運(yùn)行情況如圖1—2所示。標(biāo)準(zhǔn)答案:①啟動(dòng)VisualBasic,在窗體上畫兩個(gè)命令按鈕。②按F4鍵,激活屬性窗口,在屬性窗口中設(shè)置兩個(gè)命令按鈕的屬性,見表1。③編寫兩個(gè)命令按鈕的Click事件過程:PrivateSubC1_Click()C1.Visible=FalseC2.Visible=TrueEndSubPrivateSubC2_Click()C1.Visible=TrueC2.Visible=FalseEndSub2.①對(duì)象主要屬性設(shè)置如表2所示。②分析:按試題要求在窗體上畫出一個(gè)文本框和一個(gè)命令按鈕,并分別將它們的屬性按表2的內(nèi)容進(jìn)行設(shè)置。當(dāng)窗體加載時(shí)激活Form_Load,通過文本框Text的Visible屬性設(shè)置為False,即將Text文本框隱藏掉。當(dāng)雙擊窗體時(shí),產(chǎn)生Form_DblClick事件,Text的Visible屬性設(shè)置為True,即可見。將字符串“等級(jí)考試”賦值給文本框Text1的Text屬性時(shí),則在文本框中顯示“等級(jí)考試”。③編程代碼:PrivateSubC1_Click()Text1.Text="等級(jí)考試"EndSubPrivateSubForm_DblClick<)Text1.Visible=TrueEndSubPrivateSubForm_Load()Text1.Visible=FalseEndSub知識(shí)點(diǎn)解析:暫無解析二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、1.在名稱為Form1的窗體上畫一個(gè)名稱為Text1的文本框,通過屬性窗口設(shè)置文本框?qū)傩?,在文本框中顯示“AAAA”(如圖2—1所示);再建立一個(gè)名稱為Cmd1,標(biāo)題為“清除”的命令按鈕,編寫適當(dāng)?shù)氖录^程。要求程序運(yùn)行后,如果單擊“清除”命令按鈕,則清除文本框中所顯示的信息。注意:保存時(shí)必須存放在考生文件夾下,窗體文件名為sjt3.frm,工程文件名為sit3.vbp。2.在考生文件夾中有工程文件sit4.vbp,它包含一個(gè)窗體文件form1。在窗體上有一個(gè)列表框,名稱為L(zhǎng)ist1,一個(gè)文本框,名稱為Text1,和一個(gè)命令按鈕,名稱為Command1,標(biāo)題為“復(fù)制”。要求程序運(yùn)行后,在列表框中自動(dòng)建立四個(gè)列表項(xiàng),分別為“項(xiàng)目1”、“項(xiàng)目2”、“項(xiàng)目3”、“項(xiàng)目4”。如果選擇列表框中的一項(xiàng),則單擊“復(fù)制”按鈕時(shí),可以把該項(xiàng)復(fù)制到文本框中(程序運(yùn)行結(jié)果如圖2—2)。要求:編寫程序,以實(shí)現(xiàn)試題要求的功能。注意:存盤時(shí)必須放在考生文件夾下,工程文件名為sjt4.vbp,窗體文件名為sjt4.frm。標(biāo)準(zhǔn)答案:①對(duì)象主要屬性設(shè)置如表3所示。②分析:按試題要求在窗體上畫一個(gè)文本框和一個(gè)命令按鈕,并分別將它們的屬性按表3的內(nèi)容進(jìn)行設(shè)置。通過將一個(gè)空字符串(即"")賦值給文本框的Text屬性即可清除Text文本框的內(nèi)容。③編程代碼:PrivateSubCmd1_C1ick()Text1.Text=""Endsub2.①窗體Load事件過程的程序如下:PrivateSubForm_Load()List1.AddItem"項(xiàng)目1"List1.AddItem"項(xiàng)目2"List1.AddItem"項(xiàng)目3"List1.Addltem"項(xiàng)目4"EndSub②命令按鈕Click事件的程序如下:PrivateSubCommand1_Cllek()Fori=0ToList1.ListCount—1IfList1.Selected(i)=TrueThenText1.Text=List1.List(i)EndIfNextiEndSub知識(shí)點(diǎn)解析:暫無解析三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾下有一個(gè)工程文件sjt5.vbp,窗體上有兩個(gè)命令按鈕和一個(gè)文本框,命令按鈕的名稱分別為Cmd1和Cmd2,標(biāo)題分別為“計(jì)算”和“存盤”,文本框?yàn)榭眨鐖D3—1所示。程序的功能是在運(yùn)行時(shí),單擊“計(jì)算”命令按鈕,系統(tǒng)隨機(jī)產(chǎn)生20個(gè)只有兩位數(shù)的正整數(shù),將其存入到一個(gè)數(shù)組中,再將這20個(gè)數(shù)相加的結(jié)果在文本框中顯示出來。單擊“存盤”命令按鈕,將相加的結(jié)果存入“out5.txt”文件中。要求:去掉程序中的注釋符,把程序中的?改為正確的內(nèi)容,使其實(shí)現(xiàn)上述功能。注意:不能修改程序中的其他部分,也不能修改控件的其他屬性。最后把修改后的程序以原文件名存盤。sjt5.frm文件內(nèi)容如下:OptionBase1DimsumAsIntegerPrivateSubCmd1_ClickODimart(20)AsInteger’Dimf1As?Randomizearr(1)=Int(Rnd*90)+10’sum=?Fori=3To20Doa=Int(Rnd*90)+10’f1=?Forj=1Toi—1Ifarr(j)=aThenf1=True:ExitForNextjLoopWhilef1arr(i)=asum=sum+arr(i)NextiText1.Text=sumEndSubPrivateSubCmd2_Click()’CallWriteData(?,sum)EndSubSubWriteData(FilenameAsString,NumAsInteger)OpenApp.Path&"\"&FilenameForOutputAs#1Print#1,NumClose#1EndSub標(biāo)準(zhǔn)答案:①對(duì)象主要屬性設(shè)置如表5所示。②分析:窗體上有兩個(gè)命令按鈕和一個(gè)文本框,它們的屬性按表5的內(nèi)容進(jìn)行設(shè)置。f1為邏輯變量,在程序中起到一個(gè)開關(guān)作用,其初值為False。變量sum為整型窗體變量,用它存放各數(shù)組值之和,其初值為第一個(gè)產(chǎn)生的隨機(jī)數(shù)。WriteData過程有兩個(gè)參數(shù),其中第一個(gè)參數(shù)的作用是傳遞文件名。在該程序中,從第二個(gè)隨機(jī)數(shù)開始,海產(chǎn)生一個(gè)隨機(jī)數(shù),都要與數(shù)組中原有的數(shù)據(jù)進(jìn)行比較,若有重復(fù),重新產(chǎn)生一個(gè),直到與每一個(gè)數(shù)據(jù)都不重復(fù)為止。③編程代碼:OptionBase1DimsumAsIntegerPrivateSubCmd1_Click()Dimarr(20)AsIntegerDimf1AsBooleanRandomizeart(1)=Int(Rnd*90)+10sum=arr(1)Fori=2To20Doa=Int(Rnd*90)+10f1=FalseForj==1Toi—1Ifarr(j)=aThenf1=True:ExitForNextjLoopWhilef1arr(i)=asum=sum+arr(i)NextiText1.Text=sumEndSubPrivateSubCmd2_Click()CallWriteData("Out5.txt",sum)EndSubSubWriteData(FilenameAsString,NumAsInteger)OpenApp.Path&"\"&FilenameForOutputAs#1Print#1,NumClose#1EndSub知識(shí)點(diǎn)解析:暫無解析VB機(jī)試模擬試卷第6套一、基本操作題(本題共1題,每題1.0分,共1分。)1、有一個(gè)工程文件ylc.vbp(相應(yīng)的窗體文件名為ylc5.frm),在窗體上畫一個(gè)名為L(zhǎng)ist1的列表框和一個(gè)名為Text1的文本框。編寫窗體的MouseDown事件。程序運(yùn)行后,如果用鼠標(biāo)左鍵單擊窗體,則從鍵盤上輸入要添加到列表框的項(xiàng)目;如果用鼠標(biāo)右鍵單擊窗體,則從鍵盤上輸入要?jiǎng)h除的項(xiàng)目,將其從列表中刪除。程序的運(yùn)行情況如圖23所示。注意:存盤時(shí)必須存放在考生文件夾下,工程文件名為ylc5.vbp,窗體文件名為ylc5.frm。標(biāo)準(zhǔn)答案:1.操作步驟(1)在VisualBasic集成環(huán)境選擇“文件”→“打開工程”命令,在對(duì)話框中選擇ylc5.vbp工程文件,單擊“確定”按鈕打開。(2)在工具箱中選擇ListBox控件,在窗體上創(chuàng)建該控件,命名為L(zhǎng)ist1。在工具箱中選擇TextBox控件,在窗體中創(chuàng)建并命名為Text1,標(biāo)題為空。2.行為編碼在代碼窗口選擇Form對(duì)象的MouseDown事件,其行為代碼如下:PrivateSubFormMouseDown(ButtonAsInteger,ShiftAsInteger,_XAsSingle,YAsSingle)SelectCaseButton’若按下的是鼠標(biāo)左鍵Case1’將文本框中的內(nèi)容加入列表框List1.Addltem,(Text1.Text)’清空文本框Text1.Text=""’若按下的是鼠標(biāo)右鍵Case2’刪除列表框中與文本框相同的內(nèi)容Fori=0ToList1.ListCount-1IfList1.List(i)=Text1.TextThenList1.Removeltem(i)ExitForEndIfNextiEndSelectEndSub3.存盤保存執(zhí)行“文件”→“保存工程”命令,工程文件名為ylc5.vbp,窗體文件名為ylc5.frm。知識(shí)點(diǎn)解析:(1)本題考查考生對(duì)ListBox控件的屬性控制和操作,特別對(duì)鼠標(biāo)按鍵的控制進(jìn)行了仔細(xì)的考查。(2)注意使用ListBox控件的AddItem、RemoveItem方法、鼠標(biāo)消息的控制。(3)本題是根據(jù)鍵碼的值,使用Select語句來判斷按下的是鼠標(biāo)左鍵或右鍵。VB機(jī)試模擬試卷第7套一、基本操作題(本題共1題,每題1.0分,共1分。)1、(1)在名稱為Forml的窗體中建立一個(gè)標(biāo)題為“顯示結(jié)果”、名稱為Commandl的命令按鈕,要求程序運(yùn)行后,如果單擊“顯示結(jié)果”按鈕,則執(zhí)行語句Forml.Print“顯示結(jié)果”;如果單擊窗體,則執(zhí)行語句Form1.Cls,如圖32—1所示。注意:保存時(shí)必須存放在考生文件夾下,窗體文件名為s11.frm,工程文件名為sj1.vbp。(2)在名稱為.Forml的窗體上建立一個(gè)垂直滾動(dòng)條,名稱為VSl,其最大值為50,最小值為0。要求程序運(yùn)行后,每次移動(dòng)滾動(dòng)塊時(shí),都執(zhí)行語句Form1.PrintVSl.Value,如圖32—2所示(程序中不能使用任何變量)。注意:保存時(shí)必須存放在考生文件夾下,窗體文件名為sj2.frm,工程文件名為sj2.vbp。標(biāo)準(zhǔn)答案:(1)清除窗體上原來的顯示的值可以用Cls方法來實(shí)現(xiàn)。根據(jù)題意,新建“標(biāo)準(zhǔn)EXE”工程,在Forml窗體上放人一個(gè)命令按鈕,并將其名稱設(shè)為Commandl、Caption屬性為“顯示結(jié)果”。然后雙擊Forml中的命令按鈕進(jìn)入代碼窗口,編寫如下代碼:PrivateSubCommandl_Click()Forml.Print"顯示結(jié)果"EndSubPrivateSubForm_Click()Forml.ClsEndSub單擊按鈕運(yùn)行程序,并按要求保存。(2)滾動(dòng)條表示的最大值由Max屬性設(shè)置,最小值由Min屬性設(shè)置,滾動(dòng)條的當(dāng)前值由Value屬性設(shè)置;當(dāng)滾動(dòng)框的位置改變時(shí),觸發(fā)Change事件。根據(jù)題意,新建“標(biāo)準(zhǔn)EXE”工程,在窗體上放人一個(gè)垂直滾動(dòng)條控件,將其名稱設(shè)為VSl,并將其Max屬性為50、Min屬性為0。雙擊VSl控件,進(jìn)入代碼窗口,編寫如下代碼:PrivateSubVSlChange()Forml.PrintVSl.ValueEndSub單擊按鈕運(yùn)行程序,并按要求保存。知識(shí)點(diǎn)解析:暫無解析二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、(1)在考生文件夾下有工程文件sj3.vbp及窗體文件sj3.frm,該程序是不完整的。在名稱為Forml的窗體上有3個(gè)Text控件及5個(gè)命令按鈕,功能為:開始啟動(dòng)工程時(shí),界面上除“讀取數(shù)據(jù)”及“關(guān)閉”按鈕有效之外,其他按鈕均不可用(灰色顯示);單擊“讀取數(shù)據(jù)”按鈕之后,利用InputBox讓用戶連續(xù)且必須輸入8個(gè)數(shù)。若錄人為非數(shù)字符號(hào),則給出提示“輸人數(shù)據(jù)無效,請(qǐng)重新輸入:”;輸入完畢后,“讀取數(shù)據(jù)”變灰,其他變?yōu)榭捎脿顟B(tài);按相應(yīng)的按鈕可分別求出所輸入數(shù)據(jù)的升序排列及平均值,并在右側(cè)對(duì)應(yīng)的文本框中顯示(注意用A(8)存放最大數(shù),A(1)存放最小數(shù));單擊“清空”按鈕將所有文本框清空。如圖10一3所示。注意:請(qǐng)?jiān)谟小?”的地方填入正確內(nèi)容,然后刪除“?”及代碼前的所有注釋符(即“’”號(hào)),但不能修改其他部分。存盤時(shí)不得改變文件名和文件夾。(2)在考生文件夾下有工程文件sj4.vbp及窗體文件sj4.frm,該程序是不完整的。在名稱為Forml,窗體上有3個(gè)Label控件、2個(gè)Text控件和2個(gè)命令按鈕。該程序的主要功能是求從1到Textl中用戶輸入的任意自然數(shù)n的累加和。剛啟動(dòng)工程時(shí),可以在輸入框內(nèi)輸入任意自然數(shù)(n值太大時(shí),運(yùn)算時(shí)間將很長(zhǎng),建議不超過4位)。當(dāng)輸入為非數(shù)值時(shí),累加結(jié)果為0;單擊“開始”可以在,I?ext2中顯示累加和,同時(shí)“開始”變?yōu)椤巴瓿伞辈⒆兓?;單擊“關(guān)閉”按鈕結(jié)束程序的運(yùn)行。如圖10—4所示注意:請(qǐng)?jiān)谟小?”的地方填入正確內(nèi)容,然后刪除“?”及代碼前的所有注釋符(即“’”號(hào)),但不能修改其他部分。存盤時(shí)不得改變文件名和文件夾。標(biāo)準(zhǔn)答案:(1)用數(shù)組str(8)來接收InputBox輸入的8個(gè)數(shù),InPutB。x的格式為:InputBOX(提示[,標(biāo)題][,默認(rèn)][,x坐標(biāo)位置][,Y坐標(biāo)位置]);Enabled屬性可設(shè)置控件是否可用,當(dāng)該值為True時(shí)可用,為False時(shí)不可用(灰色);Val()函數(shù)將字符轉(zhuǎn)換成數(shù)值。根據(jù)題意,將5個(gè)命令按鈕和3個(gè)文本框控件添加到窗體中,命令按鈕的名稱分別為Commandl、command2.Command3、Command4和Command5,Caption屬性分別為“讀取數(shù)據(jù)”、“升序顯示”、“平均值”、“清空”和“關(guān)閉”,文本框的名稱分別為Textl、Text2和Text3,Text屬性都為空。雙擊Cornmandl進(jìn)入代碼窗口,補(bǔ)充后的代碼如下:Dima(8)AsLongDimstr(8)AsStringPrivateSubCommandl_Click()DimstrlASStringDimstr2AsStringDimstr3AsStringDimiASIntegerstr3=""Fori=iTo8str2==istrl="輸入第"strl=strl+str2strl=str1+"個(gè)數(shù)"str(i)=InputBox(strl)lfstr(i)=""Then’如果按“取消則重新初始化”對(duì)話框Form_LoadEndIfWhiieAsc(str(i))>Asc("9")OrAsc(str(i))ExitForEndIfNextjNextiFori=1To8tmp=a(i)str=str+tmp+""NextiText2.Text=strEndSubPrivateSubCommand3_Click()’求平均數(shù)DimiAsIntegerDimtotalAsLongtotal=0Fori=lTo8total=total+a(i)Nextitotal=total\8Text3.Text=totalCommandl.Enabled=FalseCommand2.Enabled=TrueCommand3.Enabled=FalseCommand4.Enabled=TrueEndSubPrivateSubCommand4_Click()’清空所有文本框Textl.Text=""Text2.Text=""Text3.Text=""Commandl.Enabled=TrueCommand2.Enabled=FalseCommand3.Enabled=FalseCommand4.Enabled=FalseEndSubPrivateSubCommand5_Click()’關(guān)閉對(duì)話框UnloadMeEndSubPrivateSubForm_Load()’初始化對(duì)話框Commandl.Enabled=TrueCommand2.Enabled=FalseCommand3.Enabled=FalseCommand4.Enabled=FalseCommand5.Enabled=TrueEndSub單擊按鈕運(yùn)行程序,并按要求保存。(2)要計(jì)算累加和通常利用for循環(huán)來完成。文本框巾的內(nèi)容(包括數(shù)字)默認(rèn)都是當(dāng)做字符串來處理的,如果要參與數(shù)據(jù)運(yùn)算則需先用Val()函數(shù)將其轉(zhuǎn)化為數(shù)字。根據(jù)題意,將3個(gè)標(biāo)簽、2個(gè)命令按鈕和2個(gè)文本框控件添加到窗體中.標(biāo)簽的Caption屬性分別為“要求:程序能得到結(jié)果total,total=1+2+3+…+n”、“輸入n(0Text)’獲得ntotal=0Fori=1Tontotal=total+i’累加NextiText2.Text=totalCommandl.Enabled=False’完成后Commandl不可用Commandl.Caption="完成"’名稱改為完成EndSubPrivateSubCommand2_Click()’關(guān)閉命令按鍵UnloadMeEndSub單擊按鈕運(yùn)行程序,并按要求保存。知識(shí)點(diǎn)解析:暫無解析三、綜合應(yīng)用題(本題共1題,每題1.0分,共1分。)3、在考生文件夾下有一個(gè)工程文件sj5.vbp,其窗體上有一個(gè)文本框,名稱為Textl,可以多行顯示;還有3個(gè)命令按鈕,名稱分別為Command1、Command2和Command3,標(biāo)題分別為“打開文件”、“大寫”和“保存”。程序運(yùn)行時(shí)的窗體界面如圖24—5所示。命令按鈕的功能是:?jiǎn)螕簟按蜷_文件”按鈕,彈出打開文件對(duì)話框,默認(rèn)打開文件的類型為“文本文件”。選擇考生文件夾下的in5.txt文件后,該文件中的內(nèi)容顯示Textl中;單擊“大寫”按鈕,程序?qū)裈ext1中的所有小寫英文字母轉(zhuǎn)換成大寫;單擊“保存”按鈕,把Text1中的內(nèi)容存入考生文件夾下的out5.txt文件中。在窗體中已經(jīng)給出了部分程序。注意:考生不得修改已有的程序和控件的屬性,必須對(duì)考生文件夾下的in5.txt文件進(jìn)行轉(zhuǎn)換,并把轉(zhuǎn)換結(jié)果通過“存盤”按鈕存入考生文件夾下的out5.txt文件中,否則會(huì)影響成績(jī)。標(biāo)準(zhǔn)答案:本題主要考查通用對(duì)話框使用、順序文件的打開和Ucase()函數(shù)的使用。通用對(duì)話框(CommonDialog)提供打開文件、保存文件、設(shè)置打印選項(xiàng)、選擇顏色和字體、顯示幫助等操作的一組標(biāo)準(zhǔn)對(duì)話框,該控件運(yùn)行時(shí)不可見。其Action屬性用于設(shè)置被打開對(duì)話的類型,F(xiàn)ilter(過濾器)屬性用于指定在對(duì)話框的文件列表中顯示文件的類型。例如,過濾器為*.txt表示顯示所有的文本文件。語法為“對(duì)象名.Filter=“描述|文件擴(kuò)展名””。首先要根據(jù)ASCII碼來判斷是否為小寫字母,然后再用Ucase函數(shù)將小寫字母轉(zhuǎn)換為大寫字母,補(bǔ)充后的具體代碼如下:DimstrASStringPrivateSubCommandl_Click()DimtmpAsStringstr=""Commonl.Filter="文本文件(*.txt)|*.txt"Commonl.ShowOpenIfCommonl.FileName

""ThenOpenCommonl.FileNameForInputAs#1’如果文件存在則進(jìn)行讀取WhileEOF(1)=False’判斷是否讀取完成Input#1,trapstr=str+tmp’將讀取的字符串放入strWendEndIfClose#1Textl.Text=str’在Textl中顯示讀取的字符串EndSubPrivateSubCommand2_Click()Textl.Text=UCase(Textl.Text)EndSubPrivateSubCommand3_Click()Open"App.Path&\out5.txt"ForOutputAs#1Print#1,Textl.Text’將修改后的字符串寫入文件中Close#1EndSub單擊按鈕運(yùn)行程序,并按要求保存。知識(shí)點(diǎn)解析:暫無解析VB機(jī)試模擬試卷第8套一、基本操作題(本題共1題,每題1.0分,共1分。)1、注意:下面出現(xiàn)的“考生文件夾”均為c:\wexam\25160001。請(qǐng)根據(jù)以下各小題的要求設(shè)計(jì)VisualBasic應(yīng)用程序(包括界面和代碼)。(1)在Form1的窗體上畫一個(gè)名稱為Text1的文本框,然后建立一個(gè)主菜單,標(biāo)題為“操作”,名稱為Op,該菜單有兩個(gè)子菜單,其標(biāo)題分別為“顯示”和“隱藏”,名稱分別為Dis和Hid,編寫適當(dāng)?shù)氖录^程。程序運(yùn)行后,如果單擊“操作”菜單中的“顯示”命令,則在文本框中顯示“計(jì)算機(jī)考試”;如果單擊“隱藏”命令,則隱藏文本框。程序的運(yùn)行情況如圖12-1和圖12-2所示。注意:存盤時(shí)必須存放在考生文件夾下,工程文件名為sjt1.vbp,窗體文件名為sjt1.frm。程序中不得使用任何變量。(2)在窗體上畫一個(gè)列表框,名稱為L(zhǎng)1,通過“屬性”窗口向列表框中添加四個(gè)項(xiàng)目,分別為“早上好”、“中午好”、“下午好”和“晚上好”,編寫適當(dāng)?shù)氖录^程。程序運(yùn)行后,每次單擊列表框中的任何一項(xiàng),則總在最后面添加一項(xiàng)“真有禮貌”。程序的運(yùn)行情況如圖12-3和圖12-4所示。注意:存盤時(shí)必須存放在考生文件夾下,工程文件名為sjt2.vbp,窗體文件名為sjt2.frm。程序中不得使用任何變量。標(biāo)準(zhǔn)答案:在窗體上建立好控件后,先設(shè)置控件屬性,再編寫事件過程。菜單在“菜單編輯器”窗口中創(chuàng)建;在程序運(yùn)行是控件是否可見該控件的Visible屬性決定,如果將該值設(shè)置為True時(shí),在對(duì)象可見,如果設(shè)置為為False時(shí),則將隱藏該控件。解題步驟:第一步:建立界面并設(shè)置控件屬性。程序中用到的控件及其屬性見表12-1。第二步:編寫程序代碼。參考代碼:PrivateSubDis_Click()Text1.Text="計(jì)算機(jī)考試"EndSubPrivateSubHid_Click()Text1.Visible=FalseEndSub第三步:調(diào)試并運(yùn)行程序。第四步:按題目要求存盤。(2)在窗體上建立好控件后,先設(shè)置控件屬性,再編寫事件過程。在“屬性”窗口中,通過List屬性設(shè)置列表項(xiàng)的內(nèi)容。向列表框中添加文本通過Additem方法來實(shí)現(xiàn),其格式為:列表框.Addltem項(xiàng)目字符串[.索引值]Addltem方法把“項(xiàng)目字符串”的文本內(nèi)容放入“列表框”中。解題步驟:第一步:建立界面并設(shè)置控件屬性。程序中只用到的控件及其屬性見表12-2。第二步:編寫程序代碼。參考代碼:PrivateSubL1_C1ick()L1.AddItem"真有禮貌"EndSub第三步:調(diào)試并運(yùn)行程序。第四步:按題目要求存盤。知識(shí)點(diǎn)解析:暫無解析二、簡(jiǎn)單應(yīng)用題(本題共1題,每題1.0分,共1分。)2、注意:下面出現(xiàn)的“考生文件夾”均為c:\wexam\25160001。(1)在考生文件夾下有工程文件sjt3.vbp及窗體文件sjt3.frm,該程序是不完整的,請(qǐng)?jiān)谟?號(hào)的地方填入正確內(nèi)容,然后刪除?及所有注釋符(即’號(hào)),但不能修改其他部分。存盤時(shí)不得改變文件名和文件夾。如圖14-3所示。本題描述如下:在名稱為Form1,標(biāo)題為“調(diào)用系統(tǒng)對(duì)話框”的窗體上有一個(gè)文本框和六個(gè)命令按鈕及一個(gè)通用對(duì)話框,通過CommonDialog實(shí)現(xiàn)對(duì)系統(tǒng)一些對(duì)話框的調(diào)用。請(qǐng)將“打開”按鈕的功能補(bǔ)充完整,并限制打開的類型為可執(zhí)行文件(*.com和*.exe),默認(rèn)打開文件類型為.exe文件。(2)在考生文件夾下有工程文件jft4.vbp及窗體文件jft4.frm,該程序是不完整的,請(qǐng)?jiān)谟?號(hào)的地方填入正確內(nèi)容,然后刪除?及所有注釋符(即’號(hào)),但不能修改其他部分。存盤時(shí)不得改變文件名和文件夾。本題描述如下:在窗體上有一個(gè)名為P1的圖片框,有一個(gè)名為C1,標(biāo)題為“輸入?yún)?shù)”的命令按鈕,有兩個(gè)單選按鈕,名稱分別是Op1和Op2,標(biāo)題分別是“畫圓環(huán)”和“畫方框”。要求程序運(yùn)行后,選中兩個(gè)單選按鈕中的一個(gè),再點(diǎn)擊命令按鈕C1,在彈出的輸入對(duì)話框中輸入相應(yīng)的參數(shù)值,則在圖片框上畫出相應(yīng)的圖形。程序運(yùn)行界面如圖14-4所示。標(biāo)準(zhǔn)答案:解題步驟:第一步:編寫程序代碼。程序提供的代碼:OptionExplicitPrivateSubCommandl_Click()DimiAsIntegerCommonDialog1.CancelError=TrueOnErrorGoToCancelCommonDialog1.Action=5Fori=1ToCommonDialog1.CopiesPrintFormNextiCancel:EndSubPrivateSubCommand2_Click()CommonDialog1.CancelError=TrueOnErrorGoToCancelCommonDialog1.HelpCommand=&H

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論