2023年電大VisualBasic程序設計作業(yè)答案完整版_第1頁
2023年電大VisualBasic程序設計作業(yè)答案完整版_第2頁
2023年電大VisualBasic程序設計作業(yè)答案完整版_第3頁
2023年電大VisualBasic程序設計作業(yè)答案完整版_第4頁
2023年電大VisualBasic程序設計作業(yè)答案完整版_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

VisualBasic程序設計作業(yè)1一、選擇題1.D2.B3.C4.C5.B6.D7.A8.B9.A10.C11.C12.C13.B14.D15.A二、填空題1.視圖工具箱2.對象事件3..vbp.frm4.窗體控件菜單5.完畢某種特定的功能對象名.方法名Form1.Show6.MultilineTrue7.40008.AutoSizeTrue9.窗體布局窗口10.txtshow.text="GOODWORK!"?11.Click()、frm1.show12.單擊雙擊裝載多響應某個事件后所執(zhí)行的程序代瑪cmd1Click13.完畢某種特定的功能對象名.方法名Form1.Show14.工具選項選項自動語法檢測15.TimerIntervalms三、問答題1.參考答案答:可視化編程是目前最直觀的一種編程方法,人們一般用Visual一詞表達它。之所以叫做“可視”,是指你無需編程,僅通過直觀的操作方式即可完畢界面的設計工作。因此,可視化語言是目前最佳的Windows應用程序開發(fā)工具。在這種語言中引入了控件的概念,每個控件都有若干方法和事件,并通過一系列的屬性來控制控件的外觀。運用這些控件,編程過程就如同畫畫,隨意點幾下鼠標,一個按鈕就完畢了,這些工作在使用傳統(tǒng)編程語言的情況下,需要編寫大量復雜的程序代碼才干實現(xiàn)??梢暬幊讨匾玫搅耸录寗訖C制,其原理是:當應用程序運營后,程序處在等待狀態(tài),當某個事件發(fā)生后,程序就去執(zhí)行此事件的事件過程,當這個事件過程執(zhí)行完后,應用程序又處在等待另一個事件發(fā)生的狀態(tài)。2.參考答案答:對象是代碼和數(shù)據的封裝體,在VB中,“數(shù)據”表現(xiàn)為屬性,“代碼”則表現(xiàn)為事件和方法。建立一個對象后,其操作通過與該對象的有關屬性、事件和方法來描述。屬性是一個對象的基本特性,每個對象都有它自己的屬性。通過修改對象的屬性,可以改變對象的外觀和功能。方法就是要對象執(zhí)行的動作,一般可以將它理解為VB提供的一種特殊的過程和函數(shù)。其特殊性在于,這些過程和函數(shù)是封裝在對象內部的,是在對象上實行的某種操作功能。事件就是在對象上所發(fā)生的事情。對象的事件是由VB預先設立好的、能被對象辨認的動作。用戶不能建立新的事件,但可以根據需要對事件進行編程。從非嚴格意義上講,可以將事件理解為一種特殊的方法。3.參考答案答:傳統(tǒng)的面向過程的應用程序中,應用程序自身控制了執(zhí)行哪一部分代碼和按何種順序執(zhí)行代碼,程序從第一行代碼開始執(zhí)行并按應用程序中預定的途徑執(zhí)行,用戶無法改變程序的執(zhí)行流程。在事件驅動的應用程序中,程序的執(zhí)行發(fā)生了主線的變化,代碼不是按照預定的途徑執(zhí)行,而是在響應不同的事件時執(zhí)行不同的代碼片段。每個對象都有一個相應的事件集,每個事件發(fā)生都要執(zhí)行一段程序代碼。事件可以由用戶操作觸發(fā),也可以由操作系統(tǒng)或其它應用程序的消息觸發(fā),甚至可由應用程序自身的消息觸發(fā)。這些事件的順序決定了代碼執(zhí)行的順序,因此,應用程序每次運營所通過的代碼途徑是不擬定的,它的執(zhí)行流程由用戶來決定。在程序設計時,不需要指出先執(zhí)行哪部分代碼,或按什么順序執(zhí)行代碼,只需編寫針對某個事件的程序代碼即可。4.參考答案答:事件驅動是VB應用程序的基本機制,其基本過程是:(1)啟動應用程序,裝載和顯示窗體。(2)窗體或窗體上的控件等待事件的發(fā)生。事件可由用戶引發(fā)(例如鍵盤操作或鼠標點擊)、可由系統(tǒng)引發(fā)(例如定期器控件)、也可由代碼間接引發(fā)(例如當代碼裝載其他窗體時產生的Load事件)。(3)當某個事件發(fā)生后,執(zhí)行其相應的事件過程代碼。(4)反復執(zhí)行第2和第3步。直到碰到End語句或單擊“結束”按鈕停止程序的運營。四、程序設計題1.Privat(yī)eSubForm_Load()Text1.Text="VB程序設計"Text1.FontSize=16EndSubPrivateSubCommand1_Click()Text1.Visible=FalseEndSubPrivateSubCommand2_Click()Text1.Visible=TrueEndSub2.PrivateSubCommand1_Click()Text1.Text=""? ? ??Text2.Text=""????? ? [Text3.Text=""? ? ? ????EndSubPrivateSubCommand2_Click()IfText1Text=""OrText2.Text=""OrText3.Text=""Then?MsgBox"成績輸入不全!"ElseText4.Text=(Val(Text1.Text)+Val(Text2.Text)+Val(Text3.Text))/3?? EndIf ? ??? SubEndPrivat(yī)eSubCommand3_Click()UnloadMe? ? ??? ?EndSub??? ? ? 3.PrivateSubCommand1_Click()IfText1.Text=""ThenMsgBox"至少要輸出單價!"Text1.SetFocusExitSubEndIfIfText2.Text=""ThenText2.Text=1IfText3.Text=""ThenText3.Text=1Text4.Text=Text1.Text*Text2.Text*Text3.TextEndSub電大天堂【VisualBasic程序設計】作業(yè)2一、選擇題1.B2.C3.D4.B5.D6.A7.B8.C9.A10.D11.C12.B13.D14.C15.A16.B17.C18.B19.D20.B二、填空題1.下拉式菜單彈出式菜單2.打開另存為顏色字體打印3.文本框列表框4.OptionBase15.Call語句6.工程工程屬性通用Form1.Show7.08.Sub過程的過程名不能返回值,而Function過程能通過過程名返回值9.窗體模塊標準模塊類模塊10.移出內存無效狀態(tài)11.(1)2*Cos*Sin/(2*)(2)Sqr(s*(s-a)*(s-b)*(s-c))(3)Sin(45*3.14/180)12.(1)x>=1Andx<12(2)A+B>=COra-c<=c(3)a>0Andb>0Or(a<0Andb<0)13.False14.ForWhileDo15.3三、閱讀下列程序,給出程序運營結果。1.程序運營后,單擊窗體,輸出結果為:5050。2.3.4.3.435.*************************四、程序設計題1.PrivateSubCommand1_Click()DimxAsSingle,yAsSinglex=Val(Text1.Text)Ifx<100Theny=xElseIfx<200Theny=9.5*xElseIfx<300Theny=0.9*xElseIfx<500Theny=0.8*xElsey=0.7*xEndIfEndIfEndIfEndIfText2.Text=yEndSub2.PrivateSubForm_Load()DimxAsIntegerx=100DoUntilx>200IfxMod3<>0ThenText1.Text=Text1.Text&Str(x)&Chr(13)&Chr(10)EndIfx=x+1LoopEndSub3.PrivateSubForm_Click()??Print"*";Tab(9);3,Tab(18);6;Tab(27);9;Tab(36);12 Print ForI=15to18? ?PrintI; ?Forj=3to12Step3? ? PrintTab(3*j);j*I; ? Nextj? ?Print ?NextIEndsub4.PrivateSubCommand1_Click()UnloadMeEndSubPrivat(yī)eSubOption1_Click()Text1.Text=10*2EndSubPrivateSubOption2_Click()Text1.Text=10/2EndSubPrivateSubOption3_Click()Text1.Text=10+2EndSubPrivateSubOption4_Click()Text1.Text=10-2EndSub5.PrivateFunctionDay(nAsInteger)SelectCasenCase0Day="星期日"&Chr(13)&"(Sunday)"Case1Day="星期一"&Chr(13)&"(Monday)"Case2Day="星期二"&Chr(13)&"(Tuesday)"Case3Day="星期三"&Chr(13)&"(Wednesday)"Case4Day="星期四"&Chr(13)&"(Thursday)"Case5Day="星期五"&Chr(13)&"(Friday)"Case6Day="星期六"&Chr(13)&"(Saturday)"EndSelectEndFunctionPrivateSubText1_KeyPress(KeyAsciiAsInteger)DimnAsIntegern=Val(Text1.Text)IfKeyAscii=13ThenIfn>=0Andn<7ThenLabel1.Caption=Day(n)ElseMsgBox"請輸入0~6之間的整數(shù)!"EndIfEndIfText1.SelStart=0Text1.SelLength=Len(Text1.Text)EndSub6.新建一個工程,在默認的窗體Form1上放置一個Picture控件,然后編寫如下代碼。Privat(yī)eSubPicture1_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfButton=2ThenMsgBox"YoupressedrightButton"Picture1.MousePointer=vbArrowEndIfEndSubPrivateSubPicture1_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)Picture1.MousePointer=vbUpArrowEndSub7.PrivateSubForm_Load()List1.AddItem"李敏"List1.AddItem"張華"List1.AddItem"呂曉燁"List1.AddItem"趙巍"List1.AddItem"袁莉"List1.AddItem"王津"List1.AddItem"何小渴"List1.AddItem"崔寧"List1.AddItem"陳曦"List1.AddItem"劉偉楠"EndSubPrivateSubCommand1_Click()IfText1.Text<>""ThenList1.AddItemText1.TextText1.Text=""ElseMsgBox"請在文本框中輸入信息!"EndIfEndSubPrivateSubCommand2_Click()List1.RemoveItemList1.ListIndexEndSubPrivateSubCommand3_Click()IfCommand3.Caption="修改"ThenText1.Text=List1.TextText1.SetFocusCommand1.Enabled=FalseCommand2.Enabled=FalseCommand3.Caption="修改確認"ElseList1.List(List1.ListIndex)=Text1.TextCommand1.Enabled=TrueCommand2.Enabled=TrueText1.Text=""Command3.Caption="修改"EndIfEndSubPrivateSubList1_Click()IfList1.ListIndex<>-1ThenCommand2.Enabled=TrueCommand3.Enabled=TrueEndIfEndSub電大天堂【VisualBasic程序設計】作業(yè)3一、選擇題1.B2.B3.B4.A5.C6.C7.D8.C9.C10.C11.B12.B13.A14.B15.C16.C17.B18.A19.C20.B21.A二、填空題1.Output2.FileCopy”c:\command.com”,”d:\comman”3.Kill”d:\tem.tmp”4.Open”SEQNEW.DAT”ForOutputAs#15.Open”SEQOLD.DAT”ForInputAs#26.右上7.False8.Picture1.Line(500,500)-(1000,1000),RGB(255,0,0),BF9.52010.ActiveConnection11.外部數(shù)據庫、遠程數(shù)據庫12.ADOrs("學號")13.增長、刪除、修改(或者Select、Delete、Update)14.Select*fromTable1Where學號=’001’15.本地數(shù)據庫、遠程數(shù)據庫三、程序設計題1.PrivateSubForm_Load()Drive1.Drive="c:\"File1.Pattern="*.bmp;*.gif;*.jpg"EndSubPrivateSubDrive1_change()Dir1.Path=Drive1.DriveEndSubPrivateSubDir1_Change()File1.Path=Dir1.PathEndSubPrivat(yī)eSubFile1_click()IfRight(File1.Path,1)="\"Thenf$=Form1.File1.Pat(yī)h+Form1.File1.FileNameElsef$=Form1.File1.Pat(yī)h+"\"+Form1.File1.FileNameEndIfPicture1.Picture=LoadPicture(f$)Picture1.AutoSize=TrueEndSub2.Privat(yī)eSubForm_Click()DimiAsSingle,twopieAsSingletwopie=8*Atn(1)'求piDrawWidth=2'設立點的大?。觕ale(-twopie,1)-(twopie,-1)'設立坐標系Fori=-twopieTotwopieSteptwopie/360'畫x軸PSet(i,0)Nexti'標x軸CurrentY=0CurrentX=-twopiePrint"-2pi";CurrentX=-twopie/2Print"-pi";CurrentX=twopie/2Print"pi";CurrentX=twopie-0.6Print"2pi";Print"p"Fori=-1To1Step0.01'畫y軸PSet(0,i)NextiCurrentX=0'標y軸刻度Fori=-1To1Step0.5CurrentY=iPrintiNextiFori=-twopieTotwopieStep0.1'畫余弦曲線PSet(i,Cos(i))NextiEndSub3.PrivateSubCheck1_Click()IfCheck1.Value=1ThenLine1.BorderWidth=4ElseLine1.BorderWidth=1EndIfEndSubPrivateSubOption1_Click(IndexAsInteger)Line1.BorderWidth=1Check1.Value=0SelectCaseIndexCase1Line1.BorderStyle=1Case2Line1.BorderStyle=2Case3Line1.BorderStyle=3EndSelectEndSub4.PrivateSubOption1_Click(IndexAsInteger)SelectCaseIndexCase0Shape1.Shape=0Case1Shape1.Shape=1Case2Shape1.Shape=3Case3Shape1.Shape=4EndSelectEndSubPrivateSubOption2_Click(IndexAsInteger)SelectCaseIndexCase0Shape1.FillStyle=1Case1Shape1.FillStyle=3Case2Shape1.FillStyle=2Case3Shape1.FillStyle=6EndSelectEndSubPrivateSubOption3_Click(IndexAsInteger)Shape1.BorderWidth=1SelectCaseIndexCase0Shape1.BorderStyle=0Case1Shape1.BorderStyle=1Case2Shape1.BorderStyle=4Case3Shape1.BorderStyle=2Case4Shape1.BorderStyle=3EndSelectEndSub5.(以SQLServer數(shù)據庫為例)'聲明對象變量ADOcn,用于創(chuàng)建與數(shù)據庫的連接PrivateADOcnAsConnectionPrivateSubReadFromTable()DimstrtmpAsStringDimADOrsAsNewRecordsetADOrs.ActiveConnection=ADOcnADOrs.Open"select*fromstudentsorderby學號"MSFlexGrid1.ClearMSFlexGrid1.Rows=0MSFlexGrid1.Cols=3strtmp="學號"+vbTab+"姓名"+vbTab+"專業(yè)"MSFlexGrid1.AddItemstrtmpDoWhileNotADOrs.EOFstrtmp=ADOrs("學號")+vbTab+ADOrs("姓名")+vbTab+ADOrs("專業(yè)")MSFlexGrid1.AddItemstrtmpADOrs.MoveNextLoopMSFlexGrid1.FixedCols=0MSFlexGrid1.FixedRows=1EndSubPrivateSubCommand1_Click()UnloadMeEndSubPrivateSubForm_Load()'定義數(shù)據庫連接字符串DimstrDBAsString'用于連接SQLServer數(shù)據庫,其中:'Server為服務器名稱'UserID為登錄賬號'Password為登錄口令'Database為具體的數(shù)據庫名strDB="Provider=SQLOLEDB;LSF;UserID=sa;Password=;Dat(yī)abase=學生"'假如還沒有建立與數(shù)據庫的連接,則用以下代碼創(chuàng)建。IfADOcnIsNothingThenSetADOcn=NewConnectionADOcn.OpenstrDB'連接SQLServer數(shù)據庫EndIfReadFromTable'調用過程顯示students表中的記錄EndSub行結果及代碼請參考主教材和實驗教材相關內容。?電大天堂【VisualBasic程序設計】作業(yè)4一、選擇題1.A2.B3.A4.D5.B6.C7.A8.B二、填空題1.A.DataArrival事件、SendData方法2.TCP/IP(或者回答TCP協(xié)議)3.EXE4.用戶自定義接口、標準接口5.LocalIp方法6.GetData方法7.使用服務程序處在偵聽狀態(tài);8.Winsock9.實時錯誤、邏輯錯誤10.OnErrorGoto0三、問答題1.參考答案答:Socket是TCP/IP網絡中最為通用的API(應用程序接口),也是在Internet上進行應用程序開發(fā)最為通用的API。它為網絡中的每臺計算機中提供了一個通信端口,通過這個端口,任何兩臺具有Socket接口應用程序就可進行信息收發(fā)通信了。程序員只需要對Socket接口進行數(shù)據的讀寫操作,主線不必關心兩臺計算機間的通信細節(jié)就可以完畢數(shù)據的發(fā)送和接受工作?;赟ocket的通信過程如圖1所示。圖12.參考答案答:VB中一般可按下列環(huán)節(jié)設計錯誤解決程序:第1步:捕獲錯誤,并強制程序跳轉即在錯誤發(fā)生時,捕獲并告知應用轉向哪段代碼進行錯誤解決。VB中通??刹捎肙nErrorGoTo語句啟用錯誤捕獲機制。第2步:編寫錯誤解決程序,對所有可預見的錯誤做出反映編寫錯誤解決程序的第一步是添加一個行標記符,比如“CheckError:”,以標志錯誤解決程序的開始。行標記符的名稱最佳具有良好的可讀性,并且后面必須跟一個冒號。常規(guī)錯誤解決程序通常放在過程的結束處,緊跟ExitSub或ExitFunction的行標記符之后。這樣在沒有錯誤發(fā)生時,過程就不會執(zhí)行錯誤解決程序了。第3步:退犯錯誤解決程序通常情況下,只有當錯誤解決程序位于過程中間位置時,才需要用到專門的錯誤解決程序退出語句。一般可使用Resume或ResumeNext語句退犯錯誤解決程序。Resume語句會繼續(xù)執(zhí)行引發(fā)錯誤的那句代碼,而ResumeNext語句則會跳過該語句,執(zhí)行引發(fā)錯誤代碼的下一句代碼。假如通過錯誤解決程序可以修正錯誤,則可以使用Resume語句,否則就使用ResumeNext語句,或者直接使用ExitSub或ExitFunction語句直接退出過程。3.參考答案答:調試程序是一件復雜的工程,不僅規(guī)定程序員對系統(tǒng)設計結果非常熟悉,思緒清楚,更需要不斷地在實踐中積累經驗。以下技巧可供參考:一方面,應事先做好備份:盡管VB提供了眾多的調試工具,但要運用這些工具查找、定位程序中的錯誤并非易事,對于一些規(guī)模較大的程序,即使是有經驗的程序員也經常要損失好幾小時甚至幾天的時間來查找錯誤。在調試過程中,很容易意外地修改、覆蓋或刪除掉必要的代碼部分。因此事先做好備份非常重要。另一方面,盡也許地分離受懷疑的程序:對于那些代碼規(guī)模較大,窗口眾多的程序而言,假如能將錯誤的范圍定位于某個窗體或某段代碼,則可以使用分離程序的

溫馨提示

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

評論

0/150

提交評論