




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、Visual Basic程序設計作業1一、選擇題1D 2B 3C 4C 5B 6D 7A 8B 9A 10C 11C 12C 13B 14D 15A 二、填空題1視圖 工具箱2對象 事件3.vbp .frm4窗體 控件 菜單5完成某種特定的功能 對象名.方法名 Form1.Show6Multiline True740008AutoSize True9窗體布局窗口 10txtshow.text=GOOD WORK! 11Click()、frm1.show12單擊 雙擊 裝載 多 響應某個事件后所執行的程序代瑪 cmd1 Click13完成某種特定的功能 對象名.方法名 Form1.Show14工
2、具 選項 選項 自動語法檢測15Timer Interval ms三、問答題1參考答案答:可視化編程是目前最直觀的一種編程方法,人們一般用Visual一詞表示它。之所以叫做“可視”,是指你無需編程,僅通過直觀的操作方式即可完成界面的設計工作。因此,可視化語言是目前最好的Windows應用程序開發工具。在這種語言中引入了控件的概念,每個控件都有若干方法和事件,并通過一系列的屬性來控制控件的外觀。利用這些控件,編程過程就如同畫畫,隨意點幾下鼠標,一個按鈕就完成了,這些工作在使用傳統編程語言的情況下,需要編寫大量復雜的程序代碼才能實現??梢暬幊讨饕玫搅耸录寗訖C制,其原理是:當應用程序運行后,程
3、序處于等待狀態,當某個事件發生后,程序就去執行此事件的事件過程,當這個事件過程執行完后,應用程序又處于等待另一個事件發生的狀態。2參考答案答:對象是代碼和數據的封裝體,在VB中,“數據”表現為屬性,“代碼”則表現為事件和方法。建立一個對象后,其操作通過與該對象的有關屬性、事件和方法來描述。屬性是一個對象的基本特性,每個對象都有它自己的屬性。通過修改對象的屬性,可以改變對象的外觀和功能。方法就是要對象執行的動作,一般可以將它理解為VB提供的一種特殊的過程和函數。其特殊性在于,這些過程和函數是封裝在對象內部的,是在對象上實施的某種操作功能。事件就是在對象上所發生的事情。對象的事件是由VB預先設置好
4、的、能被對象識別的動作。用戶不能建立新的事件,但可以根據需要對事件進行編程。從非嚴格意義上講,可以將事件理解為一種特殊的方法。3參考答案答:傳統的面向過程的應用程序中,應用程序自身控制了執行哪一部分代碼和按何種順序執行代碼,程序從第一行代碼開始執行并按應用程序中預定的路徑執行,用戶無法改變程序的執行流程。在事件驅動的應用程序中,程序的執行發生了根本的變化,代碼不是按照預定的路徑執行,而是在響應不同的事件時執行不同的代碼片段。每個對象都有一個相應的事件集,每個事件發生都要執行一段程序代碼。事件可以由用戶操作觸發,也可以由操作系統或其它應用程序的消息觸發,甚至可由應用程序本身的消息觸發。這些事件的
5、順序決定了代碼執行的順序,因此,應用程序每次運行所經過的代碼路徑是不確定的,它的執行流程由用戶來決定。在程序設計時,不需要指出先執行哪部分代碼,或按什么順序執行代碼,只需編寫針對某個事件的程序代碼即可。4參考答案答:事件驅動是VB應用程序的基本機制,其基本過程是:(1)啟動應用程序,裝載和顯示窗體。(2)窗體或窗體上的控件等待事件的發生。事件可由用戶引發(例如鍵盤操作或鼠標點擊)、可由系統引發(例如定時器控件)、也可由代碼間接引發(例如當代碼裝載其他窗體時產生的Load事件)。(3)當某個事件發生后,執行其對應的事件過程代碼。(4)重復執行第2和第3步。直到遇到End語句或單擊“結束”按鈕停止
6、程序的運行。四、程序設計題1Private Sub Form_Load() Text1.Text = VB程序設計 Text1.FontSize = 16End SubPrivate Sub Command1_Click() Text1.Visible = FalseEnd SubPrivate Sub Command2_Click() Text1.Visible = TrueEnd Sub2Private Sub Command1_Click() Text1.Text = Text2. Text = Text3.Text = End SubPrivate Sub Command2_Click
7、() If Text1 Text = Or Text2.Text = Or Text3.Text = Then MsgBox 成績輸入不全! Else Text4.Text = (Val(Text1.Text) + Val(Text2.Text) + Val(Text3.Text) /3 End IfSub EndPrivate Sub Command3_Click()Unload MeEnd Sub3 Private Sub Command1_Click() If Text1.Text = Then MsgBox 至少要輸出單價! Text1.SetFocus Exit Sub End If
8、 If Text2.Text = Then Text2.Text = 1 If Text3.Text = Then Text3.Text = 1 Text4.Text = Text1.Text * Text2.Text * Text3.TextEnd Sub電大天堂【Visual Basic程序設計】作業2一、選擇題1B 2C 3D 4B 5D 6A 7B 8C 9A 10D 11C 12B 13D 14C 15A 16B 17C 18B 19D 20B二、填空題 1下拉式菜單 彈出式菜單 2打開 另存為 顏色 字體 打印 3文本框 列表框 4Option Base 1 5Call語句 6工程
9、 工程屬性 通用 Form1.Show 708Sub過程的過程名不能返回值,而Function過程能通過過程名返回值9窗體模塊 標準模塊 類模塊10移出內存 無效狀態11(1)2*Cosa*Sina/(2*a) (2) Sqr(s*(s-a)*(s-b)*(s-c) (3) Sin(45*3.14/180)12(1)x=1 And x=C Or a-c0 And b0 Or(a0 And b0)13False14For While Do153三、閱讀下列程序,給出程序運行結果。1程序運行后,單擊窗體,輸出結果為:5050。23 4 3.4 35 * * *四、程序設計題1 Private Su
10、b Command1_Click() Dim x As Single, y As Single x = Val(Text1.Text) If x 100 Then y = x Else If x 200 Then y = 9.5 * x Else If x 300 Then y = 0.9 * x Else If x 200 If x Mod 3 0 Then Text1.Text = Text1.Text & Str(x) & Chr(13) & Chr(10) End If x = x + 1 LoopEnd Sub 3 Private Sub Form_Click()Print *;Ta
11、b(9);3,Tab(18);6;Tab(27);9;Tab(36);12PrintFor I=15 to 18Print I;For j=3 to 12 Step 3Print Tab(3*j);j*I;Next jPrint Next IEnd sub 4Private Sub Command1_Click() Unload MeEnd SubPrivate Sub Option1_Click() Text1.Text = 10 * 2End SubPrivate Sub Option2_Click() Text1.Text = 10 / 2End SubPrivate Sub Optio
12、n3_Click() Text1.Text = 10 + 2End SubPrivate Sub Option4_Click() Text1.Text = 10 - 2End Sub5Private Function Day(n As Integer) Select Case n Case 0 Day = 星期日 & Chr(13) & (Sunday) Case 1 Day = 星期一 & Chr(13) & (Monday) Case 2 Day = 星期二 & Chr(13) & (Tuesday) Case 3 Day = 星期三 & Chr(13) & (Wednesday) Cas
13、e 4 Day = 星期四 & Chr(13) & (Thursday) Case 5 Day = 星期五 & Chr(13) & (Friday) Case 6 Day = 星期六 & Chr(13) & (Saturday) End SelectEnd FunctionPrivate Sub Text1_KeyPress(KeyAscii As Integer) Dim n As Integer n = Val(Text1.Text) If KeyAscii = 13 Then If n = 0 And n 7 Then Label1.Caption = Day(n) Else MsgBo
14、x 請輸入06之間的整數! End If End If Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text)End Sub6新建一個工程,在默認的窗體Form1上放置一個Picture控件,然后編寫如下代碼。Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then MsgBox You pressed right Button Picture1.MousePointer = v
15、bArrow End IfEnd SubPrivate Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Picture1.MousePointer = vbUpArrowEnd Sub 7 Private Sub Form_Load() List1.AddItem 李敏 List1.AddItem 張華 List1.AddItem 呂曉燁 List1.AddItem 趙巍 List1.AddItem 袁莉 List1.AddItem 王津 List1.AddItem 何小
16、渴 List1.AddItem 崔寧 List1.AddItem 陳曦 List1.AddItem 劉偉楠End SubPrivate Sub Command1_Click() If Text1.Text Then List1.AddItem Text1.Text Text1.Text = Else MsgBox 請在文本框中輸入信息! End IfEnd SubPrivate Sub Command2_Click() List1.RemoveItem List1.ListIndexEnd SubPrivate Sub Command3_Click() If Command3.Caption
17、= 修改 Then Text1.Text = List1.Text Text1.SetFocus Command1.Enabled = False Command2.Enabled = False Command3.Caption = 修改確認 Else List1.List(List1.ListIndex) = Text1.Text Command1.Enabled = True Command2.Enabled = True Text1.Text = Command3.Caption = 修改 End IfEnd SubPrivate Sub List1_Click() If List1.
18、ListIndex -1 Then Command2.Enabled = True Command3.Enabled = True End IfEnd Sub電大天堂【Visual Basic程序設計】作業3一、選擇題1B 2B 3B 4A 5C 6C 7D 8C 9C 10C 11B 12B 13A 14B 15C 16C 17B 18A19C 20B 21A二、填空題1Output2FileCopy”c:”, ”d:” 3Kill”d:tem.tmp”4Open”SEQNEW.DAT”For Output As # 15Open”SEQOLD.DAT”For Input As # 26右
19、上7False8Picture1.Line(500,500)-(1000,1000),RGB(255,0,0),BF952010ActiveConnection11外部數據庫、遠程數據庫12ADOrs(學號)13增加、刪除、修改(或者Select、Delete、Update)14Select * from Table1 Where 學號=00115本地數據庫、遠程數據庫三、程序設計題1 Private Sub Form_Load() Drive1.Drive = c: File1.Pattern = *.bmp;*.gif;*.jpgEnd SubPrivate Sub Drive1_chan
20、ge() Dir1.Path = Drive1.DriveEnd SubPrivate Sub Dir1_Change() File1.Path = Dir1.PathEnd SubPrivate Sub File1_click() If Right(File1.Path, 1) = Then f$ = Form1.File1.Path + Form1.File1.FileName Else f$ = Form1.File1.Path + + Form1.File1.FileName End If Picture1.Picture = LoadPicture(f$) Picture1.Auto
21、Size = TrueEnd Sub2Private Sub Form_Click() Dim i As Single, twopie As Single twopie = 8 * Atn(1) 求pi DrawWidth = 2 設置點的大小 Scale (-twopie, 1)-(twopie, -1) 設置坐標系 For i = -twopie To twopie Step twopie / 360 畫x軸 PSet (i, 0) Next i 標x軸 CurrentY = 0 CurrentX = -twopie Print -2pi; CurrentX = -twopie / 2 P
22、rint -pi; CurrentX = twopie / 2 Print pi; CurrentX = twopie - 0.6 Print 2pi; Print p For i = -1 To 1 Step 0.01 畫y軸 PSet (0, i) Next i CurrentX = 0 標y軸刻度 For i = -1 To 1 Step 0.5 CurrentY = i Print i Next i For i = -twopie To twopie Step 0.1 畫余弦曲線 PSet (i, Cos(i) Next iEnd Sub3Private Sub Check1_Clic
23、k() If Check1.Value = 1 Then Line1.BorderWidth = 4 Else Line1.BorderWidth = 1 End IfEnd SubPrivate Sub Option1_Click(Index As Integer) Line1.BorderWidth = 1 Check1.Value = 0 Select Case Index Case 1 Line1.BorderStyle = 1 Case 2 Line1.BorderStyle = 2 Case 3 Line1.BorderStyle = 3 End SelectEnd Sub 4Pr
24、ivate Sub Option1_Click(Index As Integer) Select Case Index Case 0 Shape1.Shape = 0 Case 1 Shape1.Shape = 1 Case 2 Shape1.Shape = 3 Case 3 Shape1.Shape = 4 End SelectEnd SubPrivate Sub Option2_Click(Index As Integer) Select Case Index Case 0 Shape1.FillStyle = 1 Case 1 Shape1.FillStyle = 3 Case 2 Sh
25、ape1.FillStyle = 2 Case 3 Shape1.FillStyle = 6 End SelectEnd SubPrivate Sub Option3_Click(Index As Integer) Shape1.BorderWidth = 1 Select Case Index Case 0 Shape1.BorderStyle = 0 Case 1 Shape1.BorderStyle = 1 Case 2 Shape1.BorderStyle = 4 Case 3 Shape1.BorderStyle = 2 Case 4 Shape1.BorderStyle = 3 E
26、nd SelectEnd Sub5(以SQL Server數據庫為例)聲明對象變量ADOcn,用于創建與數據庫的連接Private ADOcn As Connection Private Sub ReadFromTable() Dim strtmp As String Dim ADOrs As New Recordset ADOrs.ActiveConnection = ADOcn ADOrs.Open select * from students order by 學號 MSFlexGrid1.Clear MSFlexGrid1.Rows = 0 MSFlexGrid1.Cols = 3 s
27、trtmp = 學號 + vbTab + 姓名 + vbTab + 專業 MSFlexGrid1.AddItem strtmp Do While Not ADOrs.EOF strtmp = ADOrs(學號) + vbTab + ADOrs(姓名) + vbTab + ADOrs(專業) MSFlexGrid1.AddItem strtmp ADOrs.MoveNext Loop MSFlexGrid1.FixedCols = 0 MSFlexGrid1.FixedRows = 1 End Sub Private Sub Command1_Click() Unload MeEnd SubPr
28、ivate Sub Form_Load() 定義數據庫連接字符串 Dim strDB As String 用于連接SQL Server數據庫,其中: Server為服務器名稱 User ID為登錄賬號 Password為登錄口令 Database為具體的數據庫名 strDB = Provider=SQLOLEDB;LSF;User ID=sa;Password=;Database =學生 如果還沒有建立與數據庫的連接,則用以下代碼創建。 If ADOcn Is Nothing Then Set ADOcn = New Connection ADOcn.Open strDB 連接SQL Serv
29、er數據庫 End If ReadFromTable 調用過程顯示students表中的記錄End Sub行結果及代碼請參考主教材和實驗教材相關內容。電大天堂【Visual Basic程序設計】作業4一、選擇題1A2B3A4D5B6C7A8B二、填空題1ADataArrival事件、SendData方法2TCP/IP(或者回答TCP協議)3EXE4用戶自定義接口、標準接口5LocalIp方法6GetData方法7使用服務程序處于偵聽狀態;8Winsock9實時錯誤、邏輯錯誤10On Error Goto 0三、問答題1參考答案答:Socket是TCP/IP網絡中最為通用的API(應用程序接口)
30、,也是在Internet上進行應用程序開發最為通用的API。它為網絡中的每臺計算機中提供了一個通信端口,通過這個端口,任何兩臺具有Socket接口應用程序就可進行信息收發通信了。程序員只需要對Socket接口進行數據的讀寫操作,根本不必關心兩臺計算機間的通信細節就能夠完成數據的發送和接收工作?;赟ocket的通信過程如圖1所示。圖12參考答案答:VB中一般可按下列步驟設計錯誤處理程序:第1步:捕獲錯誤,并強制程序跳轉即在錯誤發生時,捕獲并告知應用轉向哪段代碼進行錯誤處理。VB中通??刹捎肙n Error GoTo語句啟用錯誤捕獲機制。第2步:編寫錯誤處理程序,對所有可預見的錯誤做出反應編寫錯
31、誤處理程序的第一步是添加一個行標識符,比如“CheckError:”,以標志錯誤處理程序的開始。行標識符的名稱最好具有良好的可讀性,并且后面必須跟一個冒號。常規錯誤處理程序通常放在過程的結束處,緊跟Exit Sub或Exit Function的行標識符之后。這樣在沒有錯誤發生時,過程就不會執行錯誤處理程序了。第3步:退出錯誤處理程序通常情況下,只有當錯誤處理程序位于過程中間位置時,才需要用到專門的錯誤處理程序退出語句。一般可使用Resume或Resume Next語句退出錯誤處理程序。Resume語句會繼續執行引發錯誤的那句代碼,而Resume Next語句則會跳過該語句,執行引發錯誤代碼的下
32、一句代碼。如果通過錯誤處理程序能夠修正錯誤,則可以使用Resume語句,否則就使用Resume Next語句,或者直接使用Exit Sub或Exit Function語句直接退出過程。3參考答案答:調試程序是一件復雜的工程,不但要求程序員對系統設計結果非常熟悉,思路清晰,更需要不斷地在實踐中積累經驗。以下技巧可供參考:首先,應事先做好備份:盡管VB提供了眾多的調試工具,但要利用這些工具查找、定位程序中的錯誤并非易事,對于一些規模較大的程序,即使是有經驗的程序員也常常要損失好幾小時甚至幾天的時間來查找錯誤。在調試過程中,很容易意外地修改、覆蓋或刪除掉必要的代碼部分。因此事先做好備份非常重要。其次,盡可能地分離受懷疑的程序:對于那些代碼規模較大,窗口眾多的程序而言,如果能將錯誤的范圍定位于某個窗體或某段代碼,則可以使用分離程序的調試方法?;舅悸肥牵涸囍业匠鲥e的代碼行(塊)或窗體,選擇并復制這些代碼到一個新的工程中,然后運行新工程,看一看是否還會出現同樣的錯誤。這樣就可以盡可能地排除程序其他部分的干擾,提高調試的效率。第三,縮小搜索范圍:如果有可能的話,可刪除工程中任何第三方控件和自定義控件,或者任何看來與問題無關的代碼,逐步縮小搜索范圍?;蛘卟捎孟喾吹牟呗裕日{試某一段代碼或窗體,再象搭積木似的逐步擴大調試的范圍。這種方法與“分
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 清潔公司轉讓協議書
- 企業無償互助協議書
- 資金墊付協議書模板
- 情夫分手協議書樣本
- 食堂攤位出租協議書
- 小區物業舞獅協議書
- 汽車定金退還協議書
- 碰傷私了賠償協議書
- 造謠賠償協議書范本
- 物流公司客戶協議書
- 憲法與銀行業務
- 機電安裝工程專業分包合同
- 行政事業單位財務知識培訓
- 2025-2030中國探地雷達行業發展分析及發展趨勢預測與投資價值研究報告
- 智慧共享中藥房建設與運行規范
- 《中央八項規定精神學習教育》專項講座
- 東湖高新區2023-2024學年下學期期中七年級數學試題(含答案)
- 2025年中國信達資產管理股份有限公司招聘筆試參考題庫含答案解析
- 勞務派遣勞務外包項目方案投標文件(技術方案)
- 教科版六年級科學下冊全冊教學設計教案
- 《中醫骨傷科學》課件- 外治法
評論
0/150
提交評論