版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
國家二級VB機試(綜合應(yīng)用題)模擬試卷2(共9套)(共90題)國家二級VB機試(綜合應(yīng)用題)模擬試卷第1套一、綜合應(yīng)用題(本題共10題,每題1.0分,共10分。)1、以下數(shù)列:1,1,2,3,5,8,13,21…的規(guī)律是從第3個數(shù)開始,每個數(shù)都是其前面兩個數(shù)之和。在考生文件夾下有一個工程文件sjt5.vbp。窗體中已經(jīng)給出了所有控件,如圖所示。請編寫適當?shù)氖录^程完成如下功能:選中一個單選按鈕后,單擊“計算”按鈕,則計算出上述數(shù)列第n項的值,并在文本框中顯示,n是選中的單選按鈕后而的數(shù)值(提示:因計算結(jié)果較大,應(yīng)使用艮整型變量)。注意:小能修改已經(jīng)給出的程序和已有的控件的屬性;在結(jié)束程序運行之前,必須選中一個單選按鈕,并單擊“計算”按鈕以獲得一個結(jié)果;必須使用窗體右上角的關(guān)閉按鈕結(jié)束程序,否則無成績。最后把修改后的文件按原文件名存盤。標準答案:【操作步驟】步驟1:打開本題工程文件。步驟2:打開代碼編輯窗口,在指定位置編寫如下代碼。參考答案PrivateSubCommand1C1ick()Dima()AsLongDimiAsIntegerDimnAsInteger’Op1.Count是單選按鈕數(shù)目,這里用的是控件數(shù)組Fori=0ToOp1.Count-1’判斷哪一項被選擇,把它后面的數(shù)值賦給n,確定n值IfOp1(i).Value=TrueThenn=Val(Op1(i).Caption)ExitForEndIfNextReDima(n)’重新申請空間,這里是動態(tài)申請a(1)=1a(2)=1’數(shù)列第一項、第二項值確定Fori=3Tona(i)=a(i-1)+a(i-2)’后一項值是前兩項值之和NextText1.Text=a(n)EndSub步驟3:調(diào)試并運行程序,關(guān)閉程序后按題目要求存盤。知識點解析:暫無解析2、在考生文件夾下有一個工程文件sjt5.vbp,其名稱為Form1的窗體上已有三個文本框Text1、Text2、Text3,以及部分程序代碼,請完成以下工作。①在屬性窗口中修改Text3的適當屬性,使其在運行時不顯示,作為模擬的剪貼板使用,窗體如圖所示。②建立下拉式菜單,如下表所示。③窗體文件中給出了所有事件過程,但不完整,請去掉程序中的注釋符,把程序中的?改為正確的內(nèi)容,以便實現(xiàn)如下功能:當光標所在的文件框中無內(nèi)容時,“剪切”、“復(fù)制”不可用,否則可以把該文本框中的內(nèi)容剪切或復(fù)制到Text3中;若Text3中無內(nèi)容,則“粘貼”不能用,否則可以把Text3中的內(nèi)容粘貼在光標所在的文本框中的內(nèi)容之后。注意:不能修改程序中的其他部分,各菜單項的標題名稱必須正確。最后將修改后的文件按原文件名存盤。標準答案:【操作步驟】步驟1:打開本題工程文件,將TexB的Visible屬性設(shè)置為False,然后按照題目要求建立菜單并設(shè)置其屬性,如圖3.20所示。菜單屬性如表3.12所示。步驟2:打開代碼編輯窗口,去掉程序中的注釋符“’”,將問號改為正確的內(nèi)容。參考答案DimwhichAsIntegerPrivateSubcopyClick()’復(fù)制按鈕Ifwhich=1Then’當焦點在Text1中,將Text1中的內(nèi)容復(fù)制給Text3Text3.Text=Text1.TextElseIfwhich=2Then’同理,焦點在Text2中,將Text2中的內(nèi)容復(fù)制給Text3Text3.Text=Text2.TextEndIfEndSubPrivateSubcut_Click()’剪切按鈕Ifwhich=1Then’當焦點在Text1中,則將內(nèi)容復(fù)制給Text3,并清空Text1內(nèi)容Text3.Text=Text1.TextText1.Text=""ElseIfwhich=2Then’同上Text3.Text=Text2.TextText2.Text=""EndIfEndSubPrivateSubeditClick()’編輯Ifwhich=1ThenIfText1.Text=""ThenCut.Enabled=FalseCopy.Enabled=FalseElseCut.Enabled=TrueCopy.Enabled=TrueEndIfElseIfwhich=2ThenIfText2.Text=""ThenCut.Enabled=FalseCopy.Enabled=FalseElseCut.Enabled=TrueCopy.Enabled=TrueEndIfEndIfIfText3.Text=""ThenPaste.Enabled=FalseElsePaste.Enabled=TrueEndIfEndSubPrivateSubpaste_Click()’粘貼按鈕Ifwhich=1Then’當焦點在Text1中則將Text3的內(nèi)容追加到Text1文件末尾Text1.ElseIfwhich=2Then’同上Text2.EndIfEndSubPrivateSubText1GotFocus()。本過程的作用是當焦點在Text1中時,which=1which=1EndSubPrivatesubText2GotFocus()’本過程的作用是當焦點在Text2中時,which=2which=2Endsub步驟3:調(diào)試并運行程序,關(guān)閉程序后按題目要求存盤。知識點解析:暫無解析3、在考生文件夾下有一個數(shù)據(jù)庫文件“samp3.a(chǎn)ccdb”,其中存在已經(jīng)設(shè)計好的表對象“tAddr”和“tUser”。同時還有窗體對象“fEdit”和“fEuser”。請在此基礎(chǔ)上按照以下要求補充“fEdit”窗體的設(shè)計。(1)將窗體中名稱為“Lremark”的標簽控件上的文字顏色改為紅色(紅色代碼為255),字體粗細改為“加粗”。(2)將窗體標題設(shè)置為“修改用戶信息”。(3)將窗體邊框改為“對話框邊框”樣式,取消窗體中的水平和垂直滾動條、記錄選擇器、導航按鈕和分隔線。(4)將窗體中“退出”命令按鈕(名稱為“cmdquit”)上的文字顏色改為深棕(深棕代碼為128)、字體粗細改為“加粗”,并給文字加上下劃線。(5)在窗體中還有“修改”和“保存”兩個命令按鈕,名稱分別為“CmdEdit”和“CmdSave”,其中“保存”命令按鈕在初始狀念為不可用,當單擊“修改”按鈕后,應(yīng)使“保存”按鈕變?yōu)榭捎谩,F(xiàn)已編寫了部分VBA代碼,請按照VBA代碼中的指示將代碼補充完整。要求:修改后運行該窗體,并查看修改結(jié)果。注意:不能修改窗體對象“fEdit”和“fEuser”中未涉及的控件、屬性;不能修改表對象“tAddr”和“tUser”。程序代碼只允許在“**********”與“**********”之間的空行內(nèi)補充一行語句,完成設(shè)計,不允許增刪和修改其他位置已存在的語句。標準答案:(1)【操作步驟】步驟1:選擇窗體對象,有鍵單擊“fEdit”窗體,從彈出的快捷菜單中選擇“設(shè)計視圖”命令。步驟2:右鍵單擊“Lxemark”標簽,從彈出的快捷菜單中選擇“屬性”命令。步驟3:單擊“格式”選項卡,在“前景色”行輸入“255”(軟件自動顯示為16進制數(shù)#FF0000),在“字體粗細”行的下拉列表中選擇“加粗”。關(guān)閉屬性表。如圖3.159所示。(2)【操作步驟】步驟1:右鍵單擊“窗體選擇器”。從彈出的快捷菜單中選擇“屬性”命令。步驟2:在“格式”選項卡的“標題”行輸入“修改用戶信息”。如圖3.160所示。(3)【操作步驟】步驟1:在“窗體”屬性對話框的“邊框樣式”行下拉列表中選擇“對話框邊框”。如圖3.161所示。步驟2:分別在“滾動條”、“記錄選擇器”、“導航按鈕”和“分隔線”的下拉列表中選擇“兩者均無”或“否”。如圖3.161所示。(4)【操作步驟】步驟1:右鍵單擊命令按鈕“退出”,從彈出的快捷菜單中選擇“屬性”命令。步驟2:單擊“格式”選項卡,在“前景色”行輸入“128”,在“字體粗細”行的下拉列表中選擇“加粗”,在“下劃線”行下拉列表中選擇“是”,關(guān)閉屬性表。(5)【操作步驟】在設(shè)計視圖中右鍵單擊命令按鈕“修改”,從彈出的快捷菜單中選擇“事件生成器”命令,在彈出的對話框中選擇“代碼生成器”,進入編程環(huán)境,在空行內(nèi)輸入以下代碼:′*****請在下面添加一條語句*****CmdSave.Enabled=True′**********************如圖3.162所示,關(guān)閉界面。知識點解析:暫無解析4、考生文件夾下有一個工程文件sjt5.vbp。運行程序后,從文件中讀出數(shù)據(jù),將其放入一個5×5的二維數(shù)組a中。請編寫程序,找出數(shù)組a中每行的最大值及該值在行中的次序(列下標),并將所找到的結(jié)果分別保存到一維數(shù)組b、c中(a中第一行的最大值保存在b(1)中,最大值的列次序保存在c(1)中)。注意:不能修改程序的其他部分和控件屬性,最后將修改后的文件按原文件名存盤。程序調(diào)試通過后,命令按鈕的事件過程必須至少執(zhí)行一次。標準答案:[操作步驟]步驟1:打開本題工程文件。步驟2:打開代碼編輯窗口,在指定位置編寫如下代碼。參考代碼Max=a(i,1)將每行第一個數(shù)作為該行最大值,以便進行比較Forj=1To5IfMax<a(i,j)Then’依次循環(huán)比較該行其他數(shù),如有更大值,則替換max值Max=a(i,j)EndIfb(i)=Max’最大值存入數(shù)組b中IfMax=a(i,j)Thenc(i)=j’最大值的下標存入數(shù)組c中Nextj步驟3:調(diào)試并運行程序,關(guān)閉程序后按題目要求存盤。知識點解析:暫無解析5、在考生文件夾下有一個工程文件sjt5.vbp。程序運行時,單擊“裝人數(shù)據(jù)”按鈕,則從考生文件夾下的in5.txt文件中讀入所有城市名稱和距離,城市名稱按順序添加到列表框List1中,距離放到數(shù)組a中;當選中列表框中的一個城市時,它的距離就在Text1中顯示,如圖所示;此時,單擊“計算運費”按鈕,則計算到該城市的每噸運費(結(jié)果取整,不四舍五入),并在Text2中顯示。每噸運費的計算方法是:距離×折扣×單價。其中,單價為0.3。折扣為距離<500折扣為1500≤距離<1000折扣為0.981000≤距離<1500折扣為0.951500≤距離<2000折扣為0.922000≤距離折扣為0.9單擊“保存”按鈕,則把距離和每噸運費存到文件out5.txt中。已經(jīng)給出了所有控件和部分程序,要求:①去掉程序中的注釋符,把程序中的?改為正確的內(nèi)容。②編寫“計算運費”按鈕的Click事件過程。③編寫列表框的Click事件過程。注意:不得修改已經(jīng)存在的程序;在退出程序之前,必須至少計算一次運費,且必須使用“保存”按鈕存儲計算結(jié)果,否則無成績。最后,程序按原文件名存盤。標準答案:【操作步驟】步驟1:打開本題工程文件。步驟2:打開代碼編輯窗口,去掉程序中的注釋符“’”,將問號改為正確的內(nèi)容,并編寫相應(yīng)的代碼。參考答案Dima(10)AsInteger,nAsIntegerPrivateSubCommand1_Click()OpenApp.Path&"\in5.txt"ForInputAS#1WhileNotEOFf1)n=n+1’下標循環(huán)加1Input#1,ch$,a(n)’將文件依次讀入ch,a(n)中List1.AddItemch將城市名添加到List1中WendClose#1EndSubPrivateSubCommand2_Click()’需要考生編寫的內(nèi)容b=Val(Text1)Ifb>=0Andb<500Then’判斷b的范圍m=0.3*bElseIfb>=500Andb<1000Thenm=0.3*b*0.98ElseIfb>=1000Andb<1500Thenm:0.3*b*0.95ElseIfb>=1500Andb<2000Thenm=0.3*b*0.92ElseIfb>=2000Thenm=0.3*b*0.9EndIfText2==int(m)EndSubPrivateSubList1_Click()’需要考生編寫的內(nèi)容Text1=a(List1.ListIndex+1)’通過List1.ListIndex+1來確定所選城市對應(yīng)的距離EndSub步驟3:調(diào)試并運行程序,關(guān)閉程序后按題目要求存盤。知識點解析:暫無解析6、在考生的文件夾下有一個工程文件sjt5.vbp,相應(yīng)的窗體文件為sjt5.frm。在窗體上有兩個命令按鈕,其名稱分別為Command1和Command2,標題分別為“寫文件"和“讀文件”,如圖3—131(a)所示。其中“寫文件”命令按鈕事件過程用來建立一個通信錄,以隨機存取方式保存到文件t5.txt中;而“讀文件”命令按鈕事件過程用來讀出文件t5.txt中的每個記錄,并在窗體上顯示出來。通信錄中的每個記錄由三個字段組成,結(jié)構(gòu)如下:姓名(Name)電話(Tel)郵政編碼(Pos)LiuMingliang(010)62781234100082各字段的類型和長度為:姓名(Name):字符串15電話(Tel):字符串15郵政編碼(Pos):長整型(Long)程序運行后,如果單擊“寫文件"命令按鈕,則可以隨機存取方式打開文件t5.txt,并根據(jù)提示向文件中添加記錄,每寫入一個記錄后,都要詢問是否再輸入新記錄,回答“Y”(或“y”)則輸入新記錄,回答“N”(或“n”)則停止輸入;如果單擊“讀文件”命令按鈕,則可以隨機存取方式打開文件t5.txt,讀出文件中的全部記錄,并在窗體上顯示出來,如圖3—131(b)所示。該程序不完整,請把它補充完整。要求如下:①去掉程序中的注釋符,把程序中的?改為正確內(nèi)容,使其能正確運行,但不能修改程序中的其他部分。②文件t5.txt中已有三個記錄,如圖3—131(b)所示,請運行程序,單擊“寫文件”命令按鈕,向文件t5.txt中添加以下兩個記錄(全部采用西文方式):LiDaqing(027)87348765430065ChenQingshan(022)26874321300120③運行程后,單擊“讀文件”命令按鈕,在窗體上顯示全部記錄(共5個)。④用原來的文件名保存工程文件和窗體文件。標準答案:【操作步驟】步驟1:打開考生文件夾中的本題工程文件sjt5.vbp,在代碼編輯窗口,去掉程序中的注釋符“’”,將問號“?”改為正確的內(nèi)容。參考代碼:RecNum=RecNum+1Put#1,RecNum,PersLoopWhileUCase(asp)<>"N"RecNum=LOF(1)/Len(Pers)Get#1,i,Pers步驟2:按鍵運行程序,先單擊“寫文件”按鈕,然后在彈出的輸入框中依次按照題目要求輸入兩條記錄,再單擊“讀文件”按鈕在窗體上顯示結(jié)果。步驟3:按要求將文件保存至考生文件夾中。知識點解析:暫無解析7、考生文件夾下的工程文件sjt5.vbp中的窗體上有兩個標題分別是“產(chǎn)生數(shù)據(jù)”和“排序”的命令按鈕。請畫兩個名稱分別為Text1、Text2,初始值為空,可顯示多行文本,有垂直滾動條的文本框(如圖1-148所示)。程序功能如下:①單擊“產(chǎn)生數(shù)據(jù)”按鈕,隨機產(chǎn)生50個100以內(nèi)的互不相等的整數(shù),并將這50個數(shù)顯示在Text1文本框中;②單擊“排序”按鈕,將50個數(shù)按升序排列,并顯示在Text2文本框中?!爱a(chǎn)生數(shù)據(jù)”和“排序”按鈕的Click事件過程已經(jīng)給出,但不完整,請將事件過程中的注釋符去掉,把?改為正確的內(nèi)容,以實現(xiàn)上述程序功能。注意:考生不得修改窗體文件中已經(jīng)存在的控件和程序,最后將程序按原文件名存盤。標準答案:【操作步驟】步驟1:打開考生文件夾中的本題工程文件sjt5.vbp,在窗體上畫兩個文本框,屬性及其值如表2-59所示。步驟2:在代碼編輯窗口,去掉程序中的注釋符“’”,將問號“?”改為正確的內(nèi)容。參考代碼:Fork=1Toi-1i=i–1Forj=i+1To50temp=a(i)a(j)=temp步驟3:按要求將文件保存至考生文件夾中。知識點解析:暫無解析8、在考生目錄下有一個工程文件vbsj5.vbp,用來計算勾股定理整數(shù)組合的個數(shù)。勾股定理中3個數(shù)的關(guān)系是:a2+b2=c2。例如,3、4、5就是一個滿足條件的整數(shù)組合(注意:a,b,c分別為4,3,5與分別為3,4,5被視為同一個組合,不應(yīng)該重復(fù)計算)。編寫程序,統(tǒng)計三個數(shù)均在60以內(nèi)滿足上述關(guān)系的整數(shù)組合的個數(shù),并顯示在標簽Lbl1中,運行時程序界面如圖3-57所示。注意:不得修改原有程序的控件的屬性。在結(jié)束程序運行之前,必須至少正確運行一次程序,將統(tǒng)計的結(jié)果顯示在標簽中,否則無成績。最后把修改后的文件按原文件名存盤。程序源碼:PublicSubsave(1AsContro1)OpenApp.Path&"\out5.txt"ForOutputAs#1Print#1,1.CaptionC1ose#1EndSub標準答案:審題分析本題可通過一個嵌套的For。循環(huán),來統(tǒng)計滿足題目要求的整數(shù)組合的個數(shù)。其中,外循環(huán)變量i的取值范圍為1~60,內(nèi)循環(huán)變量i的取值范圍為i~60(這樣可避免出現(xiàn)重復(fù)的組合)。通過表達式:Sqr(i*i+j*j)=Int(Sqr(i*i+j*j))是否成立來判斷Sqr(i*i+j*j)的值是否為整數(shù),并通過表達式:Sqr(i*i+j*j)<=60是否成立來判斷Sqr(i*i+j*j)的值是否在60以內(nèi),當兩個條件同時滿足時,此時的i、j及Sqr(i*i+j*j)即為滿足題目要求的整數(shù)組合,記錄組合個數(shù)的變量n加一。循環(huán)結(jié)束,將n值顯示在標簽Label1中。操作步驟步驟1:打開考生文件夾下的工程文件vbsj5.vbp,在碼編輯窗口的指定位置輸入代碼:參考代碼:PrivateSubCommand1_Click()′===考生編寫程序開始====DimiAsIntegerDimjAsIntegerDimnAsIntegerFori=1To59Forj=iTo60IfSqr(i*i+j*j)=Int(Sqr(i*i+j*j))AndSqr(i*i+j*j)<=60Thenn=n+1EndIfNextNextLbl1.Caption=n′===考生編寫程序結(jié)束====′不要改動以下內(nèi)容saveLabel1EndSub步驟2:按鍵運行程序,單擊“計算”按鈕。步驟3:按要求將文件保存至考生文件夾中。考點鏈接多重循環(huán)、常用內(nèi)部函數(shù)知識點解析:暫無解析9、在考生文件夾下有一個工程文件sjt5.vbp,其窗體中有一個實心圓。程序運行時,當用鼠標左鍵單擊窗體任何位置時,實心圓則向單擊位置直線移動;若用鼠標右鍵單擊窗體,則實心圓停止移動。窗體文件中已經(jīng)給出了全部控件,但程序不完整。要求:請去掉程序中的注釋符,把程序中的?改為正確的內(nèi)容,使其能正確運行,不能修改程序的其他部分和控件屬性。最后把修改后的文件按原文件名存盤。標準答案:步驟1:打開考生文件下的本題工程文件sjt5.vbp,在代碼編輯窗口,去掉程序中的注釋符”’“,將問號”?”改為正確的內(nèi)容。參考代碼:Stepx=0stepy=a*stepxTimer1.Enabled=TrueTimer1.Enabled=FalSeShape1.MoveShapel.Left+stepx,Shape1.Top+stepy步驟2:按要求將文件保存至考生文件夾中。知識點解析:暫無解析10、在考生目錄下有一個工程文件sjt5.vbp。窗體中已經(jīng)給出了所有控件(如圖3-82所示)。請編寫適當?shù)氖录^程完成以下功能:單擊“讀數(shù)”按鈕,則把考生目錄下的in5.txt文件中的一個整數(shù)放入Text1;單擊“計算”按鈕,則計算出大于該數(shù)的第一個素數(shù),并顯示在Text2中;單擊“存盤”按鈕,則把找到的素數(shù)存到考生目錄下的out5.txt文件中。注意:在結(jié)束程序運行之前,必須單擊“存盤”按鈕,把結(jié)果存入out5.txt文件,否則無成績。最后把修改后的文件按原文件名存盤。標準答案:審題分析程序設(shè)計思路:要找出大于給定數(shù)的最小素數(shù),可以首先將給定數(shù)加1賦值給變量a,通過調(diào)用函數(shù)isprime(a),以其返回值不是素數(shù)作為Do循環(huán)語句的循環(huán)條件,在循環(huán)體中加入語句:a=a+1實現(xiàn)每執(zhí)行循環(huán)體一次變量a的值加1,當循環(huán)結(jié)束時a的值即為所求。操作步驟步驟1:打開本題對應(yīng)工程文件sjt5.vbp。步驟2:雙擊窗體Form1上的“計算”按鈕,打開代碼編輯窗口,在其Click事件過程中輸入如下代碼:參考代碼:PrivateSubCommand2_Click()a%=CInt(Text1.Text)Doa%=a%+1LoopUnti1isprime(a%)Text2.Text=a%EndSub步驟3:編寫判斷素數(shù)的函數(shù)過程isprime,參考代碼為:Functionisprime(aAsInteger)DimflagAsBooleank%=2flag=TrueWhilek%<=Int(a/2)AndflagIfa/k%=Int(a/k%)Thenflaa=FalseEndIfk%=k%+1Wendisprime=flagEndFunctiOn步驟4:按鍵運行程序,先單擊“讀數(shù)”按鈕,接著單擊“計算”按鈕,最后單擊“存盤”按鈕。步驟5:按要求將文件保存至考生文件夾中??键c鏈接Do循環(huán)和While循環(huán)、Sub過程和函數(shù)過程、參數(shù)調(diào)用。知識點解析:暫無解析國家二級VB機試(綜合應(yīng)用題)模擬試卷第2套一、綜合應(yīng)用題(本題共10題,每題1.0分,共10分。)1、在考生文件夾下有一個工程文件sjt5.vbp,其窗體上有2個標題分別是“讀數(shù)據(jù)”和“統(tǒng)計”的命令按鈕,1個名稱為Text1的文本框,2個標簽控件,如圖3—31所示。程序功能如下:1)單擊“讀數(shù)據(jù)”按鈕,則將考生文件夾下in5.dat文件的內(nèi)容(該文件中含有不超過800個英文單詞,單詞之間用1個空格隔開)顯示在Text1文本框中。2)單擊“統(tǒng)計"按鈕,則自動統(tǒng)計Text1中所有5字母單詞的個數(shù),并顯示在右下角的Labe11標簽中。“讀數(shù)據(jù)”按鈕的Click事件過程已經(jīng)給出,“統(tǒng)計”按鈕的Click事件過程不完整,函數(shù)GetWords的功能是從字符串s中分離出每個單詞,依次放入數(shù)組words的數(shù)組元素中,返回值為單詞的總數(shù)目。要求:1)請將程序中的注釋符去掉,把?改為正確的內(nèi)容;2)補全“統(tǒng)計”按鈕Click事件過程中的代碼,以實現(xiàn)上述程序功能。注意:考生不得修改窗體文件中已經(jīng)存在的控件和程序,在結(jié)束程序運行之前,必須進行“統(tǒng)計”,且必須用窗體右上角的關(guān)閉按鈕結(jié)束程序,否則無成績。最后,程序按原文件名存盤。標準答案:【操作步驟】GetWords=mm=GetWords(Text1.Text,ch)’-------考生編寫的程序代碼從這里開始k=0Fori=1TomIfLen(ch(i))=5Thenk=k+1EndIfNextiLabe11.Caption=k’-------考生編寫的程序代碼到這里結(jié)束步驟2:按<F5>鍵運行程序,單擊各個按鈕測試驗證。步驟3:按要求將文件保存至考生文件夾中。知識點解析:暫無解析2、在考生文件夾中有一個工程文件vbsj5.vbp(相應(yīng)的窗體文件為vbsj5.frm)。窗體Form1上有兩個名稱為Lab1和Lab2的標簽,它們的標題分別為“密碼”和“允許次數(shù)”;一個名稱為Cmd1的命令按鈕,其標題為“確定”;兩個名稱分別為Txt1和Txt2的文本框。其中Txt1用來輸入密碼(輸入時顯示“*”),無初始內(nèi)容,Txt2的初始內(nèi)容為3。已給出了Cmd1的事件過程,但不完整,要求去掉程序中的注釋符“’”,把程序中的問號“?”改為正確內(nèi)容,使得在運行時,在Txt1中輸入密碼后,單擊“確定”按鈕,如果輸入的是“123456”,則在Txt1中顯示“密碼正確”如圖3—66所示;如果輸入其他內(nèi)容,單擊“確定”后,彈出如圖3—67所示的錯誤提示對話框,并且Txt2中的數(shù)字減1。最多可輸入3次密碼,若3次輸入錯誤,則禁止再次輸入。程序源碼:PrivateSubCmd1_Click()’If?="123456"ThenTxt1.Text="密碼正確"’Txt1.?=""ElseTxt2.Text=Txt2.Text-1’IfTxt2.Text>?ThenMsgBox"第"&(3-Txt2.Text)&"次密碼錯誤,請重新輸入"ElseMsgBox"3次輸入錯誤,請退出"’Txt1.Enabled=?EndIfEndIfEndSub標準答案:步驟1:打開考生文件夾中的本題工程文件vbsj5.vbp,將文本框Txt1的PasswordChar屬性值沒置為“*”。步驟2:在代碼編輯窗口,去掉程序中的注釋符“’”,將問號“?”改為正確的內(nèi)容。參考代碼:IfTxt1.Text="123456"ThenTxt1.PasswordChar=""IfTxt2.Text>0ThenTxt1.Enabled=False步驟3:按要求將文件保存至考生文件夾中。知識點解析:根據(jù)題目源程序,判斷文奉框Txt1輸入的密碼是否為“123456”的條件表達式為:Txt1.Text="123456";要去掉對文本框中輸入內(nèi)容的屏蔽,需將其PasswordChar屬性值清空,即執(zhí)行語句:Txt1.PasswordChar="";每輸入一次錯誤密碼,文本框Txt2中的數(shù)字減1,當文本框Txt2中數(shù)值還大于0時,提示重新輸入,否則提示錯誤,并禁用文本框Txt1。3、在考生文件夾下自一個工程文件sjt5.vbp。在窗體文件中已經(jīng)給出了全部控件及部分程序。程序運行時,在文本框Text1中輸入一個大十2的偶數(shù),并單擊“分解為”命令按鈕,則可以將該偶數(shù)分解為兩個素數(shù)之和,且要求其中一個素數(shù)是所能夠分解出的最小的素數(shù)(一個偶數(shù)有時可以分解為多種素數(shù)的組合,例如24可以分解為5和19,也町以分解為11和13,要求取含有最小素數(shù)的組合,如圖所示)。要求編寫“分解為”命令按鈕事件過程中“考生編寫程序開始”和“考生編寫程序結(jié)束”之間的代碼,以實現(xiàn)上述功能。過程IsPrime用來判斷一個數(shù)是否為素數(shù),如果是,返回值為True,否則返回值為False。注意:不得修改原有程序和控件的屬性。至少正確運行一次程序,且程序運行時在文本框中輸入23456,單擊“分解為”按鈕,將結(jié)果顯示在標簽中,否則將沒有成績,最后將修改后的文件按原文件名存盤。標準答案:【操作步驟】步驟1:打開本題工程文件。步驟2:打開代碼編輯窗口,在代碼編輯窗口指定位置編寫以下代碼。參考答案Fori=lToVal(Text1.Text)’i從1開始,第一個找到的肯定就是滿足條件的最小素數(shù)IfIsPrime(i)AlldIsPrime(Val(Text1.Text)-i)Then’判定兩個數(shù)是否都滿足素數(shù)條件Label1=iIJabel2=Val(Textl.Text)-iExitForEndIfNexti步驟3:調(diào)試并運行程序,關(guān)閉程序后按題目要求存盤。知識點解析:暫無解析4、在考生文件夾下有一個工程文件sjt5.vbp,含三個窗體,標題分別為“啟動”、“注冊”、“登錄”,程序運行時顯示“肩動”窗體,單擊窗體上按鈕時彈出對應(yīng)窗體進行注冊或登錄。注冊信息放在全局數(shù)組users中,注冊用戶數(shù)(小丁或等于10個)放存全局變量n中(均已在標準模塊中定文)。注冊時用戶名不能重復(fù),且“口令”與“驗證口令”必須相同,注冊成功則在“啟動”窗體的標簽中提示“注冊成功”,否則提示相應(yīng)錯誤信息。登錄時,檢驗用戶名和口令,若正確,則在“啟動”窗體的標簽上提示“登錄成功”,否則提示相應(yīng)錯誤信息。標準模塊中函數(shù)finduser的功能是:存users數(shù)組中搜索用戶名(參數(shù)ch),找到則返回該用戶名在users中的位置,否則返回0。文件中已經(jīng)給出了所有控件和程序,但程序小完整,請去掉程序中的注釋符,把Form2、Form3窗體文件中的?改為正確的內(nèi)容。注意:不得修改已經(jīng)存在的程序和控件的屬性;最后,程序按原文件名存盤。標準答案:【操作步驟】步驟1:打開本題工程文件。步驟2:打開代碼編輯窗口,去掉程序中的注釋符“’”.將問號改為正確的內(nèi)容。參考答案’Form2窗體代碼PrivateSubCommandlC1ick()’清空重置Text1="’"Text2=""Text3=""EndSubSubwriteusers()’向教組users中寫入新用戶信息n=n+1’用戶數(shù)目自增users(n,1)=Text1’保存用戶的用戶名、密碼users(n,2)=Text2EndSubPrivateSubCommand2_Click()IfText1=""ThenMsgBox("必須輸入用戶名!")Text1.SetFocus’Text1重新獲得焦點ElseIffinduser(Trim$(Text1))>0Then如找到相同名。則返回位置一定大于0MsgBox("此用戶名已經(jīng)存在!")E1seIfText2<>Text3Then’比較口令與驗證口令是否相同MsgBox("口令驗證錯誤!")ElsewriteusersForm1.Label1="注冊成功!"’當注冊成功后Labeii顯示成功信息Form2.HideEndIfEndSub’Form3窗體代碼PrivateSubCommandlC1ick()k=finduser(Trim$(Textl))Ifk=0Then’驗證用戶名是否存在MsgBox("沒有注冊!")ElseIfTrim$(Text2)<>users(k,2)Then’驗證輸入的密碼是否正確MsgBox("口令錯誤!")ElseForm1.Label1.Caption="登錄成功!"Form3.HideEndIfEndSUb步驟3:調(diào)試并運行程序,關(guān)閉程序后按題目要求存盤。知識點解析:暫無解析5、在考生目錄下有一個工程文件sjt5.vbp。窗體中已經(jīng)給出了所有控件(如圖3-116所示)。請編寫適當?shù)氖录^程完成以下功能:單擊“讀數(shù)”按鈕,則把考生目錄下的in5.txt文件中的一個整數(shù)放入Text1;單擊“計算”按鈕,則計算出大于該數(shù)的第一個素數(shù),并顯示在Text2中:單擊“存盤”按鈕,則把找到的素數(shù)存到考生目錄下的out5.txt文件中。注意:在結(jié)束程序運行之前,必須單擊“存盤”按鈕,把結(jié)果存入out5.txt文件,否則無成績。最后把修改后的文件按原文件名存盤。標準答案:【操作步驟】步驟1:打開本題對應(yīng)工程文件sjt5.vbp。步驟2:雙擊窗體Form1上的“計算”按鈕,打開代碼編輯窗口,在其Click事件過程中輸入如下代碼。參考代碼:PrivateSubCommand2_Click()a%=CInt(Text1.Text)Doa%=a%+1LoopUntilisprime(a%)Text2.Text=a%EndSub步驟3:編寫判斷素數(shù)的函數(shù)過程isprime,參考代碼為:Functionisprime(aAsInteger)DimflagAsBooleank%=2flag=TrueWhilek%<=Int(a/2)AndflagIfa/k%=Int(a/k%)Thenflag=FalseEndIfk%=k%++1Wendisprime=flagEndFunction步驟4:按<F5>鍵運行程序,先單擊“讀數(shù)”按鈕,接著單擊“計算”按鈕,最后單擊“存盤”按鈕。步驟5:按要求將文件保存至考生文件夾中。知識點解析:暫無解析6、在窗體上畫一個文本框,名稱為Text1(可顯示多行),然后再畫三個命令按鈕,名稱分別為Command1、Command2和Command3,標題分別為“讀數(shù)”、“統(tǒng)計”和“存盤”,如圖3-136所示。程序的其功能是:單擊“讀數(shù)”按鈕,則把考生目錄下的in5.txt文件中的所有英文字符放入Text1(可多行顯示);單擊“統(tǒng)計”按鈕,找出并統(tǒng)計英文字母i、1、k、1、m、n(不區(qū)分大小寫)各自出現(xiàn)的次數(shù);單擊“存盤”按鈕,將字母i~n出現(xiàn)次數(shù)的統(tǒng)計結(jié)果依次存到考生目錄下的順序文件out5.txt中。注意:存盤時必須存放在考生文件夾下,工程文件名為sjt5.vbp,窗體文件名為sjt5.frm。標準答案:【操作步驟】步驟1:新建一個“標準EXE”工程,如表4-80所示,在窗體中畫出控件并設(shè)置其相關(guān)屬性。步驟2:打開代碼編輯窗口,編寫相應(yīng)事件過程。參考代碼:OptionBase1Dimsum(6)AsIntegerPrivateSubCommand1_Click()penApp.Path&"\in5.txt"ForInputAt#1Text1.Text=Input(LOF(1),#1)CioSe#1EndSubPrivateSubCommand2_Click()Fori=1To6sum(i)=0NextiIfLen(Text1.Text)=0ThenMsgBox"請先使用“讀數(shù)”功能!"ElseFori=1ToLen(Text1.Text)C=LCase(Mid(Text1.Text,i,1))SelectCasecCase"i"sum(1)=sum(1)+1Case"j"sum(2)=sum(2)+1Case"k"sum(3)=sum(3)+1CaSe"1"sum(4)=sum(4)+1CaSe"m"sum(5)=sum(5)+1CaSe"n"sum(6)=sum(6)+1EndSelectNextiEndIfEndSubPrivateSubCommand3_Click()OpenApp.Path&"\out5.txt"ForOutputAs#1Fori=1To6Print=1,sum(i)NextiClose=1EndSub步驟3:按要求將文件保存至考生文件夾中。知識點解析:暫無解析7、在考生文件夾下有一個工程文件sjt5.vbp,其中,已給出了所有控件(如圖3-141所示)和部分程序。程序運行時,請按以下順序操作:1)單擊“讀入文件”按鈕,把考生目錄下的文件in5.dat中的內(nèi)容讀入內(nèi)存并顯示在上面的文本框(Text1)中;2)單擊“加密”按鈕,則可對Text1中的內(nèi)容進行加密并顯示在下面的文本框(Text2)中。3)單擊“存結(jié)果”按鈕則把’Text2中的內(nèi)容存到out5.dat文件中。加密規(guī)則:對于第奇數(shù)個字符,若是字母,則把它變?yōu)樗竺娴淖址?若為“Z”則變?yōu)椤癆”),不是字母則不變;對于第偶數(shù)個字符,若是字母,則把它變?yōu)樗懊娴淖址?若為“A”則變?yōu)椤癦”),不是字母則不變。大小寫字母都遵循此規(guī)則。例如:若原有的字符是:AbbaZGHa-MnnKYzx則加密后的字符是:BaczAFGb-NmeiXaw已經(jīng)給出“存結(jié)果”按鈕的Click事件過程和函數(shù)isletter,函數(shù)isletter(aAsString)判斷變量a中是否為一個字母,若是則返回True,否則返回False,可以直接調(diào)用。請編寫“讀入文件”按鈕和“加密”按鈕的Click事件過程,以實現(xiàn)上述功能。(in5.dat文件中只含英文單詞和空格,不分段落和行)注意:考生不得修改已經(jīng)存在的程序,必須用“存結(jié)果”按鈕存儲加密結(jié)果,否則無成績。最后,按原文件名把程序存盤。標準答案:【操作步驟】步驟1:打開考生文件夾中的本題工程文件sjt5.vbp,在代碼編輯窗口指定位置編寫以下代碼。參考代碼:PrivateSubCommand1_Click()Open"n5.dat"ForInputAs1LineInput#1,sClose#1Text1.Text=sEndSubPrivateSubCommand2Click()DimiAsInteger,ssAsStringss=""Fori=1ToLen(s)Ifisletter(Hid(s,i,1))=TrueThenIfiMod2=0ThenTfMid(s,i,1)="a"Thenss=ss&"z"ElseIFMid(S,i,1)="A"Thenss=ss&"Z"Elsess=ss&Chr(Asc(Mid(s,i,1))-1)EndIfElseIfMid(s,i,1)="Z"Thenss=ss&"A"ElseIfMid(s,i,1)="z"Thenss=ss&"a"Elses=ss&Chr(Asc(Mid(s,i,1))+1)EndIfEndIfElsess=ss&Mid(s,i,1)EndIfNextText2.Text=ssEndSub步驟2:按<F5>鍵運行程序,先單擊“讀入文件”按鈕,接著單擊“加密”按鈕,然后單擊“存結(jié)果”按鈕保存結(jié)果,最后單擊窗體右上角的關(guān)閉按鈕結(jié)束程序。步驟3:按要求將文件保存至考生文件夾中。知識點解析:暫無解析8、在考生文件夾下有一個工程文件sjt5.vbp,含三個窗體,標題分別為“啟動”、“注冊”、“登錄”,運行時顯示“啟動”窗體,單擊其上按鈕時彈出對應(yīng)窗體進行注冊或登錄。注冊信息放在全局數(shù)組users中,注冊用戶數(shù)(最多10個)放在全局變量n中(均己在標準模塊中定義)。注冊時用戶名不能重復(fù),且“口令”與“驗證口令”須相同,注冊成功則在“啟動”窗體的標簽中顯示“注冊成功”,否則顯示相應(yīng)錯誤信息。登錄時,檢驗用戶名和口令,若正確,則在“啟動”窗體的標簽上顯示“登錄成功”,否則顯示相應(yīng)錯誤信息。標準模塊中函數(shù)finduser的功能是:在users數(shù)組中搜索用戶名(即參數(shù)ch),找到則返回該用戶名在users中的位置,否則返回0。已經(jīng)給出了所有控件和程序,但程序不完整,請去掉程序中的注釋符,把Form2、Form3窗體文件中的“?”改為正確的內(nèi)容。注意:不得修改已經(jīng)存在的程序和控件的屬性,最后程序按原文件名存盤。標準答案:【操作步驟】步驟1:打開考生文件夾中的本題工程文件sjt5.vbp,在代碼編輯窗口,去掉程序中的注釋符“’”,將問號“?”改為正確的內(nèi)容。參考代碼:’---注冊窗體Form2-n=n+1ElseIffinduser(Trim$(Text1))>0ThenForm1.Label1.Caption="注冊成功!"’---登錄窗體Form3-Ifk=0ThenElseIfTrim$(Text2)<>users(k,2)Then步驟2:按要求將文件保存至考生文件夾中。知識點解析:暫無解析9、在考生文件夾下有工程文件sjt5.vbp,窗體上有兩個標題分別是“讀數(shù)據(jù)”和“統(tǒng)計”的命令按鈕,請?zhí)砑右粋€名稱為Label1、標題為“回文的個數(shù)為”的標簽和一個名稱為Text1,初始值為空的文本框,如圖3-15所示。程序功能如下:①單擊“讀數(shù)據(jù)”按鈕,則將考生文件夾下in5.dat文件的內(nèi)容讀到變量s中。②單擊“統(tǒng)計”按鈕,則統(tǒng)計in5.dat文件(該文件中僅含由空格間隔開的字母串)中剛文的個數(shù),并將統(tǒng)計的回文個數(shù)顯示在Text1文本框內(nèi)。(所謂回文是指順讀與倒讀都一樣的字符串,如“recycer”)?!白x數(shù)據(jù)”按鈕和“統(tǒng)計”按鈕的Click事件過程已經(jīng)給出,請完善Function過程foundhuiwen的功能,實現(xiàn)上述程序功能。注意:考牛不得修改窗體文件中已仃在的控件和程序,在結(jié)束程序運行之前,必須先進行統(tǒng)計,且必須用窗體右上角的關(guān)閉按鈕結(jié)束程序,否則無成績。最后,程序按原文件名存盤。標準答案:審題分析本題中自定義函數(shù)foundhuiwen的功能是判斷字符串參數(shù)P是否為回文,若是則返回函數(shù)值True,否則返回函數(shù)值False。根據(jù)回文的定義程序設(shè)計思路:在For循環(huán)中按從兩端到中間的順序,分別用Mid函數(shù)依次從字符串參數(shù)P中同時取出兩個字符,并比較這兩個字符是否相同,若不相同則返回函數(shù)值False,并用ExitFunction語句退出自定義函數(shù);否則繼續(xù)往下比較直至循環(huán)結(jié)束。循環(huán)正常結(jié)束時,返回函數(shù)值True。操作步驟步驟1:打開考生文件夾下的工程文件sjt5.vbp,如表4-9所示在窗體上畫出控件并設(shè)置它們的相關(guān)屬性。步驟2:打開代碼編輯窗口,在指定位置編寫foundhuiwen函數(shù)的過程。參考代碼:Functionfoundhuiwen(PAsString)foundhuiwen=Truek=Len(p)Fori=1Tok/2IfMid(p,i,1)<>Mid(P,k+1一i,1)ThenfoundhUiwen=FalseExitForEndIfNextEndFunctjon步驟3:按鍵運行程序,先單擊“讀數(shù)據(jù)”按鈕,再單擊“統(tǒng)計”按鈕,最后單擊窗體右上角的關(guān)閉按鈕結(jié)束程序。步驟4:按要求將文件保存至考生文件夾中??键c鏈接常用內(nèi)部函數(shù)、For循環(huán)結(jié)構(gòu)。知識點解析:暫無解析10、在考生文件夾中有一個工程文件sjt5.vbp。窗體外觀如圖2-58所示。運行程序,單擊”讀數(shù)據(jù)”按鈕,文件中的數(shù)據(jù)被讀入字符串變量中并顯示在Label2標簽中。單擊”排序”按鈕時,對讀入的數(shù)據(jù)從小到大排序,并將排序結(jié)果顯示在窗體的Label4控件中。要求:工程文件中已給出部分程序,”讀數(shù)據(jù)”命令按鈕的事件過程不完整,請去掉程序中的注釋符,把程序中的?改為正確的內(nèi)容。請編寫”排序”命令按鈕的事件過程中的部分程序代碼。注意:不能修改程序的其他部分和控件屬性。最后把修改后的文件按原文件名存盤。程序調(diào)試通過后,兩個命令按鈕的事件過程必須至少各執(zhí)行一次。標準答案:步驟1:打開考生文件夾中的本題工程文件sjt5.vbp,在代碼編輯窗口,去掉程序中的注釋符”’“,將問號”?”改為正確的內(nèi)容。參考代碼:DoWhileNotEOF(1)s=s&Str(a(i))步驟2:在代碼編輯窗口指定位置編寫以下代碼:參考代碼:num=UBound(a)Fori=1Tonum-1Forj=iTonumIfa(i)>a(j)Thent=a(i)a(i)=a(j)a(j)=tEndIfNextNext步驟3:按<F5>鍵運行程序,先單擊”讀數(shù)據(jù)”按鈕,再單擊”排序”按鈕,最后單擊窗體右上角的關(guān)閉按鈕結(jié)束程序。步驟4:按要求將文件保存至考生文件夾中。知識點解析:暫無解析國家二級VB機試(綜合應(yīng)用題)模擬試卷第3套一、綜合應(yīng)用題(本題共10題,每題1.0分,共10分。)1、在考生文件夾中有一個工程文件sjt5.vbp。該程序的功能是從in5.txt文件中讀入40個數(shù)據(jù),統(tǒng)計這些數(shù)據(jù)中素數(shù)的個數(shù),并找出所有素數(shù)中最小的素數(shù)(判斷素數(shù)的函數(shù)已給出)。最后將杏找和統(tǒng)計的結(jié)果分別顯示在標簽Label4和Label3中(窗體外觀如圖所示)。程序不完整,請在指定的位置把程序補充完整。注意:不得修改原有程序和控件的屬性。程序結(jié)束運行之前,必須全少正確運行-次程序,將統(tǒng)計的結(jié)果顯示在標簽中,否則無成績。最后把修改后的文件按原文件名存盤。標準答案:【操作步驟】步驟1:打開本題工程文件。步驟2:分析并在適當位置編:寫程序代碼。參考答案DimaAsIntegerDimbAsIntegera=0b=arr(1)Fori=iTo40’確定素數(shù)個數(shù)Ifprime(arr(i))Then’判斷是否為素數(shù)a=a+1’素數(shù)個數(shù)累加Label3.Captioh=a’在標簽中顯示NextFori=1To40’查找最小素數(shù)Ifprime(arr(j))Andarr(i)<=bThen’比較素數(shù)大小b=arr(i)’將較小素數(shù)賦給bLabel4.Caption=b’在標簽中顯示Next步驟3:按照題同要求調(diào)試并運行程序,效果如圖3.16所示。步驟4:關(guān)閉程序后,按題目要求存盤。知識點解析:暫無解析2、在窗體上畫一個文本框,其名稱為Text1,初始內(nèi)容為空白,并設(shè)置成多行顯示格式;然后再畫兩個命令按鈕,其名稱分別為Command1和Command2,標題分別為“顯示”和“保存”,如圖3—111所示,編寫適當?shù)氖录^程。程序運行后,如果單擊“顯示”按鈕,則讀取考生文件夾下的in5.txt文件,并在文本框中顯示出來,該文件是一個用隨機存取方式建立的文件,共有5個記錄,要求按記錄號順序顯示全部記錄,每個記錄一行;如果單擊“保存”按鈕,則把所有記錄保存到考生文件夾下的順序文件out5.txt中。隨機文件in5.txt中的每個記錄包括三個字段,分別為姓名、性別和年齡,其名稱和長度分別為:其類型定義為:PriVateTypeStudInfoNameAsString*8SexAsString*4AgeAsIntegerEndType要求:文件out5.txt以順序存取方式建立和保存。存盤時必須存放在考生文件夾下,工程文件名為sjt5.vbp,窗體文件名為sjt5.frm。標準答案:【操作步驟】步驟1:新建一個“標準EXE”工程,如表4—67在窗體中畫出控件并設(shè)置其相關(guān)屬性。步驟2:打開代碼編輯窗口,編寫相應(yīng)事件過程。參考代碼:PrivateTypeStudInfoNameASString*8SexAsString*4AgeAsIntegerEndTypeDimStudASStudInfoDimRecNumAsLongPrivateSubCommand1_CliCk()OpenApp.Path&"\in5.txt"ForRandomAs#1Len=Len(Stud)RecNum=1DoWhileNotEOF(1)Get#1,RecNum,StudText1.Text=Text1.Text&Stud.NameText1.Text=Text1.Text&Stud.SexText1.Text=Text1.Text&_Str(Stud.Age)Text1.Text=Text1.Text+vbCrLfRecNum=RecNum+1LoopClose1EndSubPrivateSubCommand2_Click()OpenApp.Path&"\out5.txt"ForOutputAs#1Print#1,Text1.TextClose1EndSub步驟3:按要求將文件保存至考生文件夾中。知識點解析:暫無解析3、在考生文件夾下有一個工程文件sjt5.vbp。其窗體中有一個名稱為Text1的文本框數(shù)組,下標從0開始。程序運行時,單擊“產(chǎn)生隨機數(shù)”按鈕,就會產(chǎn)生10個3位數(shù)的隨機數(shù),并放入Text1數(shù)組中,如圖3—183(a)所示;單擊“重排數(shù)據(jù)”按鈕,將把Text1中的奇數(shù)移到前面,偶數(shù)移到后面,如圖3—183(b)所示。文件中已經(jīng)給出了所有控件和部分程序。要求:請去掉程序中的注釋符,把程序中的“?”改為正確的內(nèi)容,使其能正確運行,不能修改程序的其他部分和控件屬性。最后把修改后的文件按原文件名存盤。提示:在“重排數(shù)據(jù)”按鈕的事件過程中有對其算法的文字描述,請仔細閱讀。標準答案:步驟1:打開考生文件夾中的本題工程文件sjt5.vbp,在代碼編輯窗口,去掉程序中的注釋符“’”,將問號“?”改為正確的內(nèi)容。參考代碼:j=9temp=Text1(j)While(i<j)IfText1(j)Mod2=1Then步驟2:按要求將文件保存至考生文件夾中。知識點解析:本題源程序中,變量i和j均用作Text1文本框數(shù)組的索引號(即Index屬性值),根據(jù)算法中的第1條,可知i=0、j=9、temp=Text1(i),其中“暫存最后一個數(shù)”的目的是為空出一個位置放第一個偶數(shù)。根據(jù)算法中的第3條,檢查第j個數(shù)是否為奇數(shù)的條件表達式為:Text1(j)Mod2=1。算法中的第2條和第3條交替運行,將實現(xiàn)一后(偶數(shù))一前(奇數(shù))重排數(shù)據(jù)的目的。根據(jù)算法中的第4條,可知在i向后移、i向前移過程中,當i=j時則停止這種移動(故While循環(huán)的條件表達式為i<j)。將先前暫存的數(shù)(temp)放到當前空缺位置,以實現(xiàn)算法中的第5條。4、數(shù)列1,1,3,5,9,15,25,41,…,的規(guī)律是從第三個數(shù)開始,每個數(shù)是它前面兩個數(shù)的和加1。在考生目錄下有一個工程文件sjt5.vbp。窗體中已經(jīng)給出了所有控件,如圖3—192所示。請編寫適當?shù)氖录^程實現(xiàn)以下功能:在Text1中輸入整數(shù)40,單擊“計算”按鈕,則在Text2中顯示該數(shù)列第40項的值。如果單擊“存盤”按鈕,則將計算的第40項的值存到考生目錄下的out5.txt文件中。(提示:因數(shù)據(jù)較大,應(yīng)使用Long型變量。)注意:在結(jié)束程序運行之前,必須單擊“存盤”按鈕,把結(jié)果存入out5.txt文件,否則無成績。最后把修改后的文件按原文件名存盤。標準答案:【操作步驟】步驟1:打開考生文件夾下的工程文件sjt5.vbp。步驟2:編寫“計算”按鈕的單擊事件過程。參考代碼:PrivateSubCommand1_Click()DimfAsLonga(1)=1:a(2)=1Fori=3ToVal(Text1.Text)f=a(i-2)+a(i-1)+1a(i)=fNextText2.Text=fEndSub步驟3:運行程序,在文本框中輸入40,并單擊“計算”按鈕獲得一個結(jié)果,然后單擊“存盤”按鈕保存計算結(jié)果。步驟4:按要求將文件保存至考生文件夾中。知識點解析:暫無解析5、在考生文件夾下有一個工程文件sjt5.vbp,其窗體上有一個文本框,名稱為Text1,可以多行顯示;有一個名稱為CD1的通用對話框;還有三個命令按鈕,名稱分別為C1、C2、C3,標題分別為“打開文件”、“轉(zhuǎn)換”、“存盤”,如圖1-64所示。命令按鈕的功能是:“打開文件”:彈出打開文件對話框,默認打開文件的類型為“文本文件”。選擇考生文件夾下的in5.txt文件后,該文件中的內(nèi)容顯示在Text1中;“轉(zhuǎn)換”:把Text1中的所有小寫英文字母轉(zhuǎn)換成大寫;“存盤”:把Text1中的內(nèi)容存入考生文件夾下的out5.dat文件中。在窗體中已經(jīng)給出了部分程序,要求:①請去掉程序中的注釋符,把程序中的?改為正確的內(nèi)容。既不能修改程序中的其他部分,也不能修改控件的屬性。②編寫“轉(zhuǎn)換”按鈕的Click事件過程。最后把修改后的文件按原文件名存盤。注意:考生不得修改已有的程序和控件的屬性,必須對考生文件夾下的in5.txt文件進行轉(zhuǎn)換,并把轉(zhuǎn)換結(jié)果通過單擊“存盤”按鈕存入考生文件夾下的out5.dat文件中,否則無成績。標準答案:【操作步驟】步驟1:打開考生文件中的本題工程文件sjt5.vbp,在代碼編輯窗口,去掉程序中的注釋符“’”,將問號“?”改為正確的內(nèi)容。參考代碼:CD1.FilterIndex=2Text1.Text=aCD1.Action=2步驟2:按指定位置編寫“轉(zhuǎn)換”按鈕的單擊事件過程。參考代碼:PrivateSubC2_Click()DimaAsString,bAsString,cAsString,kAsInteger,nAsIntegera=Text1.Textb=""n=Asc("a")-Asc("A")Fork=1ToLen(a)c=Mid$(a,k,1)Ifc>="a"Andc<="z"Thenc=String(1,Asc(c)-n)EndIfb=b+cNextkText1.Text=bEndSub步驟3:按要求將文件保存至考生文件夾中。步驟4:按<F5>鍵運行程序,先單擊“打開文件”按鈕,接著單擊“轉(zhuǎn)換”按鈕,最后單擊“存盤”按鈕。知識點解析:暫無解析6、在考生文件夾下有一個工程文件sjt5.vbp,窗體上有兩個文本框,名稱為Text1、Text2,都可以多行顯示。還有三個命令按鈕,名稱分別為C1、C2、C3,標題分別為“取數(shù)”、“排序”、“存盤”?!叭?shù)”按鈕的功能是把考生目錄下的in5.dat文件中的50個整數(shù)讀到數(shù)組中,并在Text1中顯示出來;“排序”按鈕的功能是對這50個數(shù)按升序排序,并顯示在Text2中;“存盤”按鈕的功能是把排好序的50個數(shù)保存到考生目錄下的out5.dat文件中。如圖1-120所示。在窗體中已經(jīng)給出了全部控件和部分程序,要求閱讀程序并去掉程序中的注釋符,把程序中的?改為正確的內(nèi)容,并編寫“排序”按鈕的Click事件過程,使其實現(xiàn)上述功能,但不能修改程序中的其他部分,也不能修改控件的屬性。最后把修改后的文件按原文件名存盤。標準答案:【操作步驟】步驟1:打開考生文件中的本題工程文件sjt5.vbp,在代碼編輯窗口的指定位置編寫以下代碼:參考代碼:PrivateSubC1_Click()DimkAsIntegerDimchAsStringOpenApp.Path&"\in5.dat"ForInputAs#1ch=""Fork=1To50Input#1,a%(k%)ch=ch+Str(a(k))+""NextkClose#1Text1.Text=ch$EndSubPrivateSubC2_Click()DimkAsInteger,iAsInteger,jAsIntegerDimchAsStringFori=1To49k=iForj=i+1To50Ifa(k)>a(j)Thenk=jEndIfNextjj=a(k)a(k)=a(i)a(i)=jNextich=""Fork=1To50ch=ch+Str(a(k))+""NextkText2.Text=chEndSub步驟2:按要求將文件保存至考生文件夾中。步驟3:按<F5>鍵運行程序,先單擊“取數(shù)”按鈕,再單擊“排序”按鈕,最后單擊“存盤”按鈕。知識點解析:暫無解析7、在考生文件夾中有一個工程文件sjt5.vbp,其功能是:找出矩陣元素的最大值,并求出矩陣對角線元素之和,窗體外觀如圖1-188所示。程序運行時,矩陣數(shù)據(jù)被放入二維數(shù)組a中。當單擊“找矩陣元素最大值”按鈕時,找出矩陣中最大的數(shù),并顯示在標簽Label3中。當單擊“對角線元素之和”按鈕時,計算矩陣主對角線元素之和,并顯示在標簽Label4中。文件中已給出部分程序,請編寫“找矩陣元素最大值”及“對角線元素之和”兩個命令按鈕的事件過程中的部分程序代碼。注意:不得修改程序的其他部分和控件屬性。最后把修改后的文件按原文件名存盤。程序調(diào)試通過后,兩個命令按鈕的事件過程必須至少各執(zhí)行一次。標準答案:【操作步驟】步驟1:打開考生文件夾下的本題工程文件sjt5.vbp,在碼編輯窗口的指定位置輸入代碼:參考代碼:PrivateSubCommand1_Click()’====考生編寫程序開始====Max=a(1,1)Fori=1To4Forj=1To4Ifa(i,j)>MaxThenMax=a(i,j)EndIfNextjNextiLabel3.Caption=Max’====考生編寫程序結(jié)束====’不得修改以下部分saveLabel3EndSubPrivateSubCommand2_Click()’====考生編寫程序開始====Sum=0Fori=1To4Sum=Sum+a(i,i)NextiLabel4.Caption=Sum’====考生編寫程序結(jié)束====’不得修改以下部分saveLabel4EndSub步驟2:按要求將文件保存至考生文件夾中。步驟3:按<F5>鍵鍵運行程序,分別單擊“找矩陣元素最大值”按鈕和“對角線元素之和”按鈕。知識點解析:暫無解析8、在考生文件夾下有一個工程文件sjt5.vbp,其窗體中有兩個標題分別是“讀數(shù)據(jù)”和“統(tǒng)計”的命令按鈕,一個名稱為Text1的文本框。請畫一個名稱為Label1、標題為“同時含有字母t、h、e的單詞個數(shù)為”的標簽;再畫一個名稱為Text2、初始值為空的文本框,如圖1-221所示。程序功能如下:①單擊“讀數(shù)據(jù)”按鈕,則將考生文件夾下in5.dat文件的內(nèi)容(該文件中僅含有字母和空格)顯示在Text1文本框中;②單擊“統(tǒng)計”按鈕,則以不區(qū)分大小寫字母的方式,自動統(tǒng)計Text1顯示內(nèi)容中同時含有“t”“h”“e”三個字母的單詞的個數(shù)(如the、there和whatever都屬于滿足條件的單詞),并將統(tǒng)計結(jié)果顯示在Text2文本框內(nèi)?!白x數(shù)據(jù)”按鈕的Click事件過程已經(jīng)給出,請將“統(tǒng)計”按鈕的Click事件過程中的注釋符去掉,把?改為正確的內(nèi)容,以實現(xiàn)上述程序功能。注意:考生不得修改窗體文件中已經(jīng)存在的控件和程序,在結(jié)束程序運行之前,必須進行統(tǒng)計,且必須用窗體右上角的關(guān)閉按鈕結(jié)束程序,否則無成績。最后,程序按原文件名存盤。標準答案:【操作步驟】步驟1:打開考生文件中的本題工程文件sjt5.vbp,在窗體Form1中畫一個標簽和一個文本框,其屬性和值如表2-106所示。步驟2:打開代碼編輯窗口,去掉程序中的注釋符“’”,將問號“?”改為正確的內(nèi)容。參考代碼:IfLen(s)=0ThenIfc<>""Thenx=LCase(t)m=m+1步驟3:按要求將文件保存至考生文件夾中。步驟4:按<F5>鍵運行程序,先單擊“讀數(shù)據(jù)”按鈕,接著單擊“統(tǒng)計”按鈕,然后單擊窗體右上角的關(guān)閉按鈕結(jié)束程序。知識點解析:暫無解析9、在考生文件夾下有一個工程文件sjt5.vbp。程序運行時,單擊”裝入數(shù)據(jù)”按鈕,則從考生目錄下的in5.txt文件中讀入所有城市名稱和距離,城市名稱按順序添加到列表框Listl中,距離放到數(shù)組a中;當選中列表框中的一個城市;時,它的距離就顯示在Textl中,如圖2-175所示;此時,單擊”計算運費”按鈕,則計算到該城市的每噸運費(結(jié)果取整,不四舍五入),并顯示在Text2中。每噸運費的計算方法是:距離×折扣×單價。其中:單價為0.3。距離<500折扣為1500≤距離<1000折扣為0.981000≤距離<1500折扣為0.95l500≤距離<2000折扣為0.922000≤距離折扣為0.9單擊”保存”按鈕,則把距離和每噸運費存到文件out5.txt中。已經(jīng)給出了所有控件和部分程序,要求:①去掉程序中的注釋符,把程序中?改為正確的內(nèi)容;②編寫列表框的Click事件過程;③編寫”計算運費”按鈕的Click事件過程。注意:不得修改已經(jīng)存在的程序:在退出程序之前,必須至少計算一次運費,且必須用”保存”按鈕存儲計算結(jié)果,否則無成績。最后,程序按原文件名存盤。標準答案:步驟1:打開考生文件夾下的本題工程文件sjt5.vbp。步驟2:在代碼編輯窗口,去掉程序中的注釋符”’“,將問號”?”改為正確的內(nèi)容。參考代碼:n=n+1LiStl.AddItemch$步驟3:編寫”計算運費”按鈕和列表框的單擊事件過程。參考代碼:PrivateSubCommand2_Click()P=0.3d=Int(Textl.Text/500)SelectCaSedCase0discount=1Case1discount=0.98Case2discount=0.95Case3discount=0.92CaseElsediscount=0.9EndSelectText2=Int(discount*p*Textl)EndSubPrivateSubListl_Click()Textl=a(Listl.ListIndex+1)EndSub步驟4:運行程序,單擊列表框中的某個列表項,并單擊”計算運費”按鈕獲得一個結(jié)果,然后單擊”保存”按鈕保存計算結(jié)果。步驟5:按要求將文件保存至考生文件夾中。知識點解析:暫無解析10、在考生文件夾下有一個工程文件sjt5.vbp,相應(yīng)的窗體文件為sjt5.frm,還有一個datain.txt文本文件,內(nèi)容為:32437658281298573142536475869713243546576879805937。程序運行后,單擊窗體,將把文件datain.txt中的數(shù)據(jù)輸入到二維數(shù)組Mat中,在窗體上按5行、5列的矩陣形式顯示出來,然后交換矩陣第一行和第三行的數(shù)據(jù),并在窗體上輸出交換后的矩陣,如圖2-190所示。在窗體的代碼窗口中已給出了部分程序,這個程序不完整,請把它補充完整,并能正確運行。要求:去掉程序中的注釋符,把程序中的?改為正確的內(nèi)容,使其實現(xiàn)上述功能,但不能修改程序中的其他部分。最后把修改后的文件按原文件名存盤。標準答案:步驟1:打開本題對應(yīng)工程文件sjt5.vbp。步驟2:打開代碼編輯窗口,去掉程序中的注釋符”’“,將問號”?”改為正確的內(nèi)容。參考代碼:DimMat(M,N)AsIntegerOpenApp.Path&“\”&“datain.txt”For_InputAs#1Input#1,Mat(i,j)Mat(3,j)=t步驟3:按要求將文件保存在考生文件夾中。知識點解析:暫無解析國家二級VB機試(綜合應(yīng)用題)模擬試卷第4套一、綜合應(yīng)用題(本題共10題,每題1.0分,共10分。)1、在考生目錄下有一個工程文件sjt5.vbp,其窗體上有一個文本框,名稱為Text1;還有兩個命令按鈕,名稱分別為C1、C2,標題分別為“計算”、“存盤”,如圖3—77所示。并有一個函數(shù)過程isprime(a)可以在程序中直接調(diào)用,其功能是判斷參數(shù)a是否為素數(shù),如果是素數(shù),則返回True,否則返回False。請編寫適當?shù)氖录^程,使得在運行時,單擊“計算”按鈕,則找出大于15000的第一個素數(shù),并顯示在Text1中;單擊“存盤”按鈕,則把Text1中的計算結(jié)果存入考生文件夾下的out5.tXt文件中。注意:考生不得修改isprime函數(shù)過程和控件的屬性,必須把計算結(jié)果通過單擊“存盤”按鈕存入out5.txt文件中,否則無成績。標準答案:步驟1:打開本題對應(yīng)工程文件sjt5.vbp。步驟2:雙擊窗體Form1上的“計算”按鈕,打開代碼編輯窗口,在其Click事件過程中輸入如下代碼。參考代碼:PrivateSubC1_Click()a%=15
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 八年級語文上冊名篇名句默寫
- 最棒的我語言活動
- 建筑給排水施工質(zhì)量控制措施
- 石河子大學《數(shù)據(jù)庫系統(tǒng)原理與應(yīng)用》2022-2023學年期末試卷
- 石河子大學《工程材料》2022-2023學年第一學期期末試卷
- 沈陽理工大學《數(shù)據(jù)庫原理與應(yīng)用》2023-2024學年期末試卷
- 民航服務(wù)禮儀學習通超星期末考試答案章節(jié)答案2024年
- 精讀《未來簡史》學習通超星期末考試答案章節(jié)答案2024年
- 沈陽理工大學《化工原理Z》2022-2023學年第一學期期末試卷
- 沈陽理工大學《電路實驗》2022-2023學年期末試卷
- 混合痔中醫(yī)護理 方案
- 美國刑法制度
- 慢性病防治和健康生活知識講座
- 2024年教師招聘考試-中小學校長招聘筆試參考題庫含答案
- 中華民族共同體概論課件第十六講文明新路與人類命運共同體
- 人教部編版一年級道德與法治上冊第10課《吃飯有講究》精美課件
- 2024-2030全球與中國鉑銅合金市場現(xiàn)狀及未來發(fā)展趨勢
- 移風易俗鄉(xiāng)風文明工作現(xiàn)場推進會上的發(fā)言范文
- 供電企業(yè)輿情的預(yù)防及處置
- (高清版)WST 433-2023 靜脈治療護理技術(shù)操作標準
- 醫(yī)院科研合作與成果轉(zhuǎn)化協(xié)議書
評論
0/150
提交評論