版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Visual Basic實(shí)驗(yàn)指導(dǎo)書(shū)軟件技術(shù)基礎(chǔ)(Visual Basic 程序設(shè)計(jì))實(shí)驗(yàn)指導(dǎo)書(shū)院系:_班級(jí):_學(xué)號(hào):_姓名:_燕山大學(xué)計(jì)算機(jī)教學(xué)實(shí)驗(yàn)中心2005年3月說(shuō) 明目前,面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言VB已成為我校信息基礎(chǔ)教學(xué)的主要內(nèi)容。本實(shí)驗(yàn)手冊(cè)包含三方面內(nèi)容:實(shí)驗(yàn)指導(dǎo)、實(shí)驗(yàn)報(bào)告和實(shí)驗(yàn)作業(yè),成為我校VB課程上機(jī)實(shí)驗(yàn)指導(dǎo)的主要依據(jù)。實(shí)驗(yàn)報(bào)告部分由課內(nèi)實(shí)驗(yàn)完成,實(shí)驗(yàn)作業(yè)部分由學(xué)生課下完成。本手冊(cè)由燕山大學(xué)計(jì)算機(jī)基礎(chǔ)教研室?jiàn)澍P偉老師執(zhí)筆,李陽(yáng)明老師審核。由于編寫(xiě)倉(cāng)促,難免有錯(cuò)誤和不足之處,請(qǐng)各位老師和同學(xué)指正。 目 錄實(shí)驗(yàn)一 VB集成環(huán)境及簡(jiǎn)單應(yīng)用程序的建立 .4實(shí)驗(yàn)二 Visual Basic語(yǔ)言
2、基礎(chǔ).9實(shí)驗(yàn)三 順序結(jié)構(gòu)程序設(shè)計(jì).12實(shí)驗(yàn)四 選擇結(jié)構(gòu)程序設(shè)計(jì)14實(shí)驗(yàn)五 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)17實(shí)驗(yàn)六 數(shù)組的使用.19實(shí)驗(yàn)七 過(guò)程.21實(shí)驗(yàn)八 函數(shù) .23實(shí)驗(yàn)九 文件的基本操作 .24實(shí)驗(yàn)十 VB的窗體 . 27實(shí)驗(yàn)十一 VB的常用控件(一).29實(shí)驗(yàn)十二 VB的常用控件(二).31附錄 考試系統(tǒng)模擬試題及筆試題 33實(shí)驗(yàn)一 VB集成環(huán)境及簡(jiǎn)單應(yīng)用程序的建立一、實(shí)驗(yàn)?zāi)康?1)掌握VB60的啟動(dòng)與退出。(2)了解VB60的集成開(kāi)發(fā)環(huán)境,熟悉各主要窗口的作用。(3)了解VB60應(yīng)用程序的開(kāi)發(fā)過(guò)程。(4)理解VB中對(duì)象的概念。(5)掌握在VB60中使用幫助的方法。二、相關(guān)知識(shí)1VisualBasi
3、c60的啟動(dòng)與退出 VisualBasic60的啟動(dòng)與退出與一般的Windows應(yīng)用程序的啟動(dòng)與退出一樣,可以通過(guò)“開(kāi)始”菜單啟動(dòng)VisualBasic60,也可以將VisualBasic60程序以快捷方式放在桌面上,然后雙擊該圖標(biāo)將其啟動(dòng);退出可以在“文件”中選擇“退出”、或雙擊窗口控制菜單圖標(biāo)、或單擊窗口關(guān)閉按鈕。2VisualBasic60的集成開(kāi)發(fā)環(huán)境 VB60的集成開(kāi)發(fā)環(huán)境在一個(gè)公共環(huán)境中集成了設(shè)計(jì)、編輯、編譯和調(diào)試等許多不同的功能,它由菜單、工具欄、工具箱、瀏覽器及完成各種特定功能的窗口組成。3VB應(yīng)用程序的開(kāi)發(fā)過(guò)程 VB采用的是一種“可視化”的編程方法,可以先設(shè)計(jì)應(yīng)用程序的外觀,
4、然后再編寫(xiě)不同部件的程序代碼。4VB中對(duì)象的概念 對(duì)象是基本的運(yùn)行時(shí)的實(shí)體,它既包括了數(shù)據(jù)(對(duì)象屬性),也包括作用于對(duì)象的操作(方法)和對(duì)象的響應(yīng)(事件)。對(duì)象的屬性用來(lái)表示對(duì)象的狀態(tài),對(duì)象的方法決定了對(duì)象可以進(jìn)行的操作。不同的對(duì)象具有不同的屬性和方法,VB中最主要的兩種對(duì)象是窗體和控件,程序設(shè)計(jì)中,基本的設(shè)計(jì)機(jī)制就是改變對(duì)象的屬性、使用對(duì)象的方法和為對(duì)象編寫(xiě)事件過(guò)程。5VB60的幫助功能VB60是VisualStudi060的套件之一,VB60本身并不帶幫助,微軟公司為VisualStudio60提供了一套MSDN Library幫助系統(tǒng)。MSDN(Microsoft Developer N
5、etwork)是使用Microsoft開(kāi)發(fā)工具或是以Windows或Internet為開(kāi)發(fā)平臺(tái)的開(kāi)發(fā)人員的基本參考,它是一本集程序設(shè)計(jì)指南、用戶使用手冊(cè)以及庫(kù)函數(shù)于一體的電子詞典,使用MSDN Library的幫助功能,不僅可以引導(dǎo)初學(xué)者入門(mén),還可幫助各種層次的用戶完成應(yīng)用程序的設(shè)計(jì)。三、實(shí)驗(yàn)舉例(實(shí)例1) VB的啟動(dòng)與退出。(1)啟動(dòng)VB60通過(guò)“開(kāi)始”菜單啟動(dòng)VisualBasic60,操作步驟為: 單擊Windows桌面任務(wù)欄的“開(kāi)始”按鈕,彈出“開(kāi)始”菜單,將鼠標(biāo)指針指向“程序”選項(xiàng),在“程序”項(xiàng)的級(jí)聯(lián)菜單中選中“MicrosoftVisualBasic60中文版”,然后在其打開(kāi)的下級(jí)
6、級(jí)聯(lián)菜單中將光標(biāo)條定位在“MicrosoftVisualBasic60中文版”命令上。 單擊鼠標(biāo)左鍵,屏幕出現(xiàn)如圖1-1所示的VisualBasic60啟動(dòng)畫(huà)面。 要建立一個(gè)新的工程,選擇“新建”選項(xiàng)卡,從中選擇“標(biāo)準(zhǔn)EXE”項(xiàng)(默認(rèn)),然后單擊“打開(kāi)”按鈕,進(jìn)入如圖1-2所示的VB6.0應(yīng)用程序集成開(kāi)發(fā)環(huán)境。圖1-1 啟動(dòng)VB6.0(2)退出VB 在圖1-2所示的VisualBasic 60應(yīng)用程序集成開(kāi)發(fā)環(huán)境窗口中,從“文件”菜單中選擇“退出”命令、或雙擊窗口控制菜單圖標(biāo)、或單擊窗口關(guān)閉按鈕均可退出VisualBasic 60。在退出時(shí),系統(tǒng)可能會(huì)提示用戶保存工程文件和窗體文件,有關(guān)保存文
7、件的操作在實(shí)例3中進(jìn)行詳細(xì)說(shuō)明。VB主窗口 工程資源 管理器窗口工具箱窗體窗口 屬性窗口 窗體布局立即窗口 窗口 圖1-2 VB60應(yīng)用程序集成開(kāi)發(fā)環(huán)境(實(shí)例2) 進(jìn)入VB集成開(kāi)發(fā)環(huán)境。1VB的三種工作模式(1) 設(shè)計(jì)模式:?jiǎn)?dòng)VB,選擇新建一個(gè)新的工程,進(jìn)入如圖1-2所示的VisualBasic60集成環(huán)境。此時(shí),標(biāo)題欄中的標(biāo)題為“工程1MicrosoftVisualBasic設(shè)計(jì)”,表明集成開(kāi)發(fā)環(huán)境處于設(shè)計(jì)模式。(2)運(yùn)行模式:用鼠標(biāo)單擊工具欄中的“!”按鈕(啟動(dòng)),或在“運(yùn)行”菜單中選擇“啟動(dòng)”命令,此時(shí),標(biāo)題欄中的標(biāo)題為“工程1-Microsoft Visual Basic運(yùn)行,表明集
8、成開(kāi)發(fā)環(huán)境處于運(yùn)行模式。(3)中斷模式:在“運(yùn)行”菜單中選擇“中斷”命令,或按(Ctrl+Break)鍵,此時(shí),標(biāo)題欄中的標(biāo)題為“工程1-Microsoft Visual Basicbreak”,表明集成開(kāi)發(fā)環(huán)境處于中斷模式。2VB集成開(kāi)發(fā)環(huán)境中的各種窗口(如1-2所示)(1)窗體窗口(2) 屬性窗口(3) 工程資源管理器窗口(4) 代碼窗口(5) 工具箱3打開(kāi)VB集成開(kāi)發(fā)環(huán)境中的工具欄(1)在“視圖”菜單中選擇“工具欄”,在它的級(jí)聯(lián)菜單中列出VB提供的工具欄及當(dāng)前工具欄的狀態(tài)。(2)選擇“編輯”命令,打開(kāi)編輯工具欄。(3)選擇“窗體編輯器”命令,打開(kāi)窗體編輯器工具欄。(4)選擇“調(diào)試”命令,
9、打開(kāi)調(diào)試工具欄。(實(shí)例3) 建立一個(gè)簡(jiǎn)單的VB應(yīng)用程序 首先建立一個(gè)自己的文件夾,以便將練習(xí)中生成的各種文件保存在該文件夾中,這里在E盤(pán)建立一個(gè)VBSY文件夾。1建立一個(gè)新的工程 啟動(dòng)VB 60,選擇新建一個(gè)新的工程,此時(shí)進(jìn)入到VB60集成開(kāi)發(fā)環(huán)境,屏幕上出現(xiàn)一個(gè)默認(rèn)的“Forml”窗體。2設(shè)置窗體屬性 選中窗體窗口中的窗體,在屬性窗口中選中(名稱)屬性,將其屬性值改為“Frmexp”;再選中Caption屬性,然后在右邊列中輸入“窗體”,此時(shí)窗體的標(biāo)題欄變?yōu)椤按绑w”,窗體窗口的標(biāo)題欄為“工程1Frmexp (Form)”。3在窗體上繪制控件(1)用鼠標(biāo)單擊工具箱中的標(biāo)有“A”的按鈕(標(biāo)簽),
10、在窗體的合適位置畫(huà)出一個(gè)矩形區(qū)域,在窗體上出現(xiàn)一個(gè)標(biāo)簽控件,用鼠標(biāo)選中該控件,然后在屬性窗口中將其(名稱)屬性設(shè)為“LblDisp”;Caption屬性設(shè)為“VB集成開(kāi)發(fā)環(huán)境”。(2)用鼠標(biāo)單擊工具箱中的命令按鈕,在窗體的合適位置畫(huà)出一個(gè)命令按鈕,用鼠標(biāo)選中該命令按鈕,然后在屬性窗口中將其(名稱)屬性設(shè)為“cmdDisp”;Caption屬性設(shè)為“顯示”。(3) 在窗體中再添加一個(gè)命令按鈕,然后將其(名稱)屬性設(shè)為“cmdClear';Caption屬性設(shè)為“清除”。窗體如圖1-3所示。 圖1-3窗體設(shè)計(jì)畫(huà)面 圖1-4 代碼窗口4編寫(xiě)程序代碼 (1)雙擊“顯示”按鈕,打開(kāi)代碼窗口,如圖
11、1-4 所示,然后輸入如下代碼:Private Sub cmdDisp_CliCk() LblDiSpViSible = TrueEnd Sub (2)在代碼窗口的對(duì)象列表框中選擇對(duì)象“cmdClear”;在過(guò)程列表框中選擇事件Click(如圖1-4),然后輸入如下代碼: Private Sub cmdClear_Click() LblDispVisible = False End Sub5運(yùn)行程序關(guān)閉代碼窗口,用鼠標(biāo)單擊工具欄中啟動(dòng)按鈕。此時(shí),程序開(kāi)始運(yùn)行,并出現(xiàn)圖1-5畫(huà)面,單擊“清除”按鈕,窗口上的文字消失;單擊“顯示”按鈕,又使文字顯示出來(lái)。 圖1-5 運(yùn)行程序窗口6保存文件 在選擇“
12、文件”“保存工程”菜單命令,或單擊工具欄中的“保存工程”按鈕。由于是第一次保存文件,因此在彈出的文件另存為對(duì)話框中提示保存窗體文件,將窗體文件保存在E盤(pán)的VBSY文件夾下并起名為Vbsy1_1frm,此時(shí),系統(tǒng)會(huì)繼續(xù)提示保存工程文件,將工程文件也保存在E盤(pán)的VBSY文件夾下并起名為Vbsyl_1vbp。7生成可執(zhí)行文件選擇“文件”“生成Vbsyl_1exe”菜單命令,彈出“生成工程”對(duì)話框,此時(shí)可執(zhí)行文件名已默認(rèn)為Vblsy_1exe,如圖1-6所示。在該對(duì)話框中單擊“選項(xiàng)”按鈕,打開(kāi)“工程屬性”對(duì)話框,如圖1-7所示,在該對(duì)話框中可以設(shè)置版本號(hào)、版本信息、編譯選項(xiàng)等。最后單擊“確定”按鈕進(jìn)行
13、編譯。圖1-6 “生成工程”對(duì)話框 圖1-7 “工程屬性”對(duì)話框8運(yùn)行可執(zhí)行文件 在E盤(pán)的VBSY文件夾下雙擊Vbsyl1exe文件,運(yùn)行該可執(zhí)行文件。啟動(dòng)該程序后的窗口如圖1-5所示。 (實(shí)例4)使用VB的幫助。 選擇“幫助”“內(nèi)容”菜單命令,彈出“MSDN library Visual Studi060”窗口。1利用目錄瀏覽主題 選擇“目錄”標(biāo)簽,在左側(cè)主題窗口中依次單擊“sual Bask文檔”“使用sualBaSic”“程序員指南”“SualBaSiC基礎(chǔ)”“窗體、控件和菜單”,最后選擇“設(shè)計(jì)窗體”主題,此時(shí)右側(cè)窗口中顯示出相應(yīng)內(nèi)容。2利用索引查找信息 選擇“索引”標(biāo)簽,在“鍵入要查找
14、的關(guān)鍵字”輸入框中輸入“SelectCase”,此時(shí)光標(biāo)定位在索引項(xiàng)的列表的“SelectCase塊”項(xiàng)目上,單擊“顯示”按鈕,右側(cè)窗口中即顯示出相應(yīng)內(nèi)容。實(shí)驗(yàn)二 Visual Basic語(yǔ)言基礎(chǔ)一、實(shí)驗(yàn)?zāi)康?1)掌握Visual Basic的數(shù)據(jù)類型和變量定義方法。(2)正確使用Visual Basic的運(yùn)算符和表達(dá)式。(3)掌握Visual Basic中數(shù)據(jù)輸入、輸出的方法。(4)掌握Visual Basic常用函數(shù)的使用方法。(5)學(xué)會(huì)用賦值語(yǔ)句構(gòu)造簡(jiǎn)單的順序結(jié)構(gòu)程序。二、相關(guān)知識(shí)1VB的數(shù)據(jù)類型 VB提供了豐富的數(shù)據(jù)類型,所有的數(shù)據(jù)都具有數(shù)據(jù)類型,如果數(shù)據(jù)的數(shù)值和數(shù)據(jù)類型不匹配,就會(huì)出
15、現(xiàn)錯(cuò)誤或者造成內(nèi)存空間的浪費(fèi)。VB將數(shù)據(jù)類型分為標(biāo)準(zhǔn)數(shù)據(jù)類型和自定義類型。 標(biāo)準(zhǔn)數(shù)據(jù)類型包括數(shù)值型數(shù)據(jù)類型、非數(shù)值型數(shù)據(jù)類型和變體數(shù)據(jù)類型。其中數(shù)值型數(shù)據(jù)類型包括整型、長(zhǎng)整型、單精度型、雙精度型、貨幣型和字節(jié)型;非數(shù)值類型包括日期型、邏輯型、字符型和對(duì)象數(shù)據(jù)類型。 除了以上標(biāo)準(zhǔn)數(shù)據(jù)類型外,用戶還可以根據(jù)自己的需要自定義數(shù)據(jù)類型,稱為自定義類型,形式如下: Public|PrivateType 自定義類型名 元素名(下標(biāo))As類型名元素名(下標(biāo))As類型名End Type2VB變量的聲明 變量是用來(lái)在程序運(yùn)行期間臨時(shí)存儲(chǔ)數(shù)值的。聲明變量包括名稱和數(shù)據(jù)類型。3VB的表達(dá)式 表達(dá)式是指用運(yùn)算符或圓括
16、號(hào)將運(yùn)算元素連接起來(lái)的一個(gè)有意義的式子。VB的表達(dá)式有下列形式: 算術(shù)表達(dá)式:由算術(shù)運(yùn)算符連接。其運(yùn)算符的含義、優(yōu)先級(jí)和數(shù)學(xué)中的相同,只是 整除運(yùn)算符()和取模運(yùn)算符(mod)是新概念,讀者應(yīng)倍加注意。 關(guān)系表達(dá)式:由關(guān)系運(yùn)算符連接,其運(yùn)算結(jié)果是一個(gè)邏輯量。運(yùn)算符兩邊的操作數(shù)如果是數(shù)值型,則按其大小比較;如果是字符型,則按其字符編碼的碼值從左到右一一比較。邏輯表達(dá)式:由邏輯運(yùn)算符連接,運(yùn)算結(jié)果為邏輯值。字符串表達(dá)式:由字符串運(yùn)算符“+”和“&”連接。它們的功能都是將兩個(gè)字符串拼接起來(lái)。 “+”運(yùn)算符兩邊的操作數(shù)應(yīng)均為字符型;“&”運(yùn)算符兩邊的操作數(shù)可以是字符型或者是數(shù)值型。4V
17、B的內(nèi)部函數(shù)VB提供了大量的內(nèi)部函數(shù)供用戶編程時(shí)使用。內(nèi)部函數(shù)按功能分為數(shù)學(xué)函數(shù)、轉(zhuǎn)換函數(shù)、字符串函數(shù)、日期函數(shù)和格式輸出函數(shù)。用戶可以通過(guò)VB的“幫助”菜單獲得所有內(nèi)部函數(shù)的使用方法。三、實(shí)驗(yàn)舉例(實(shí)例1) 邏輯型數(shù)據(jù)的使用。 Private Sub Form_cliCk() Dim a AS Boolean, b AS Boolean Dim X AS Integer, y AS IntegerX = 0y = -2a = Xb = yPrint a,b,x,ya = Trueb = FalSeX = aY=bPrint x,y,a,bEnd Sub(實(shí)例2) 日期型數(shù)據(jù)。 Private
18、 Sub Form_cliCk() Dim a AS Date, S AS Date, d AS Date Dim f AS Date, S1 AS Date, S2 AS Date a = #592002# s = #5121999 12:30:15 PM# d = 200112 f = -200112 S1 = 05 S2 = 0 Print a, S Print d, f Print Sl, S2 End Sub (實(shí)例3)關(guān)系運(yùn)算符。 Private Sub Form_cliCk() Print ”abcde” = ”abd” Print ”abcde, > ”aba” Prin
19、t ”BC” >= ”ABCFF” Print 31 < 3 Print ”34” < ”3” Print ”abc” <> ”ABC” End Sub 在比較時(shí)注意以下原則:(1)如果兩個(gè)操作數(shù)是數(shù)值型,則按其大小進(jìn)行比較。(2)如果兩個(gè)操作數(shù)是字符型,則按字符的ASC碼值從左到右一一比較,也就是說(shuō),先比較兩個(gè)字符串中的第一個(gè)字符,其ASC碼值大的字符串大,如果第一個(gè)字符相同,則比較第二個(gè)字符,依此類推,直到比出結(jié)果為止。 (實(shí)例4) 算術(shù)運(yùn)算函數(shù)的使用。 Private Sub Form_cliCk() Print Abs(-1.7), Log(12), Sq
20、r(9) Print Exp(3), Sin(30 * 3.1415926/180) Print Int(-3.5), Fix(-3.5), Round(1.5), Round(1.512,2) End Sub(實(shí)例5) 求余數(shù)(模)運(yùn)算符的使用。Private Sub Form_cliCk()Print 20 Mod 3Print 20 Mod -3Print -20 Mod 3Print -20 Mod 3End Sub觀察運(yùn)行結(jié)果。實(shí)驗(yàn)三 順序結(jié)構(gòu)程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康?1)掌握Visual Basic語(yǔ)言中數(shù)據(jù)輸入方法。(2)掌握Visual Basic語(yǔ)言中數(shù)據(jù)輸出方法。(3)正確使用
21、Visual Basic賦值語(yǔ)句。(4)學(xué)會(huì)設(shè)計(jì)簡(jiǎn)單的順序結(jié)構(gòu)程序。二、相關(guān)知識(shí)1賦值語(yǔ)句賦值語(yǔ)句是VB中使用頻率最高的語(yǔ)句,這個(gè)語(yǔ)句的含義就是將等號(hào)右邊表達(dá)式的值傳送給等號(hào)左邊的對(duì)象屬性或變量,使其可以在程序運(yùn)行中改變。使用賦值語(yǔ)句應(yīng)注意以下幾點(diǎn):(1)只有當(dāng)表達(dá)式是一種與變量兼容的數(shù)據(jù)類型時(shí),該表達(dá)式的值才可以賦給變量或?qū)傩?。不能將字符串表達(dá)式的值賦給數(shù)值變量,也不能將數(shù)值表達(dá)式的值賦給字符串變量。如果這樣做,就會(huì)在解釋時(shí)出現(xiàn)錯(cuò)誤。(2)可以把字符串或數(shù)值表達(dá)式賦給Variant變量,但反過(guò)來(lái)就必須分析:任何除Null之外的Variant都可以賦給字符串變量,但只有當(dāng)Variant的值可以
22、解釋為一個(gè)數(shù)時(shí)才能賦給數(shù)值變量。(3)將一種數(shù)據(jù)類型的表達(dá)式賦給另一種數(shù)值類型的變量時(shí),系統(tǒng)會(huì)強(qiáng)制將該表達(dá)式的值轉(zhuǎn)換為變量的數(shù)據(jù)類型。2InputBoxO函數(shù) 該函數(shù)產(chǎn)生一個(gè)對(duì)話框,在對(duì)話框中顯示提示信息,等待用戶輸入正文或按下按鈕,此時(shí)返回包含文本框內(nèi)容的字符串。作為對(duì)話框消息出現(xiàn)的字符串表達(dá)式,最大長(zhǎng)度是1024個(gè)字符,由所用字符的寬度決定。如果該消息包含多個(gè)行,則可在各行之間用回車(chē)符vbCr、換行符vbLf或回車(chē)換行符的組合vbCrLf來(lái)分隔。3MsgBox0函數(shù) MsgBox()函數(shù)也產(chǎn)生一個(gè)對(duì)話框,在對(duì)話框中顯示消息,等待用戶單擊按鈕,并返回一個(gè)Integer數(shù), 告訴用戶單擊了哪一
23、個(gè)按鈕。函數(shù)中顯示在對(duì)話框中的消息是一個(gè)字符串表達(dá)式,其規(guī)則與InputBox函數(shù)相同。MsgBox()函數(shù)根據(jù)所選定參數(shù)的不同,可以彈出不同形式的消息框供用戶使用。4Print語(yǔ)句Print實(shí)質(zhì)是一種方法,在這里我們稱它為語(yǔ)句是因?yàn)樵诖绑w上Print方法的對(duì)象名可以省略,省略后的形式和原Basic中的Print語(yǔ)句相同。該語(yǔ)句最常用的兩個(gè)參數(shù)是Spc(n)和Tab(n),其中Spc(n)用來(lái)在輸出中插入空白字符,n為要插入的空白字符數(shù)。Tab(n)用來(lái)將插入點(diǎn)定位在絕對(duì)列號(hào)上,n為列號(hào)。三、實(shí)驗(yàn)舉例(實(shí)例1) MsgBox函數(shù)的使用。 Private Sub Commandl_C1iCk()
24、 Dim r AS Integer MsgBox”最簡(jiǎn)單的MsgBox”R = MsgBox(“復(fù)雜的MsgBox”, vbYesNo+vbCritical + vbDefaultButton2,-”你看到了么?“) Print”你按的值為”;r End Sub 觀察運(yùn)行結(jié)果。(實(shí)例2) 已知圓的半徑R,求圓的周長(zhǎng)和面積。(1)選擇“文件”菜單上的“新建工程”命令,新建個(gè)工程。(2)在窗體上創(chuàng)建兩個(gè)標(biāo)簽(Label),調(diào)整位置和大小,設(shè)置標(biāo)簽Labell的Caption屬性為“圓的周長(zhǎng)是:”、標(biāo)簽Label2的Caption屬性為“圓的面積是:”。(3)打開(kāi)代碼窗口,輸入下面程序代碼。Priv
25、ate Sub Form_Click()Dim r as Integer, S as Single,area as Single r = 3S = 2 * 3.14159 * rArea = 3.14159 * r 2Label1Caption=“圓的周長(zhǎng)是:”+Format(s)Label2Caption=“圓的面積是:”,+Format(area)End Sub運(yùn)行程序,求圓的周長(zhǎng)和面積。(實(shí)例3) InputBOx函數(shù)的不同用法。Private Sub Form_CliCk() Dim StrName AS String , Title AS String Dim Default AS
26、String, MyValue AS String ,設(shè)置提示信息 StrName = ”請(qǐng)輸入數(shù)據(jù)”,設(shè)置標(biāo)題Title = ”InputBox函數(shù)使用舉例”設(shè)置缺省值Default = ”2”第一種:顯示提示信息、標(biāo)題及缺省值MyValue = InputBox(StrName, Title, Default),第二種:指定坐標(biāo):在1000,1000的位置顯示對(duì)話框MyValue = InputBox(StrName, Title, Default,1000,1000),第三種:顯示“幫助”按鈕,使用幫助文件MyValue = InputBox(StrName,Title, , , ,”D
27、EMO.HLP”, 10)End Sub觀察結(jié)果。實(shí)驗(yàn)四 選擇結(jié)構(gòu)程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康?1)掌握邏輯表達(dá)式的正確書(shū)寫(xiě)形式。(2)學(xué)會(huì)單分支和雙分支結(jié)構(gòu)程序的使用。(3)學(xué)會(huì)多分支條件語(yǔ)句的使用。(4)掌握情況語(yǔ)句的使用,弄清楚情況語(yǔ)句和多分支條件語(yǔ)句的區(qū)別。二、相關(guān)知識(shí) 選擇結(jié)構(gòu)也叫做條件分支結(jié)構(gòu),即根據(jù)條件選擇要執(zhí)行的分支。Visual Basic中常用的條件執(zhí)行語(yǔ)句有:IfThenElseEndlf語(yǔ)句;Select Case語(yǔ)句。1IfThenElseEndlf語(yǔ)句 語(yǔ)句中的判斷條件是數(shù)值表達(dá)式或字符串表達(dá)式,其運(yùn)算結(jié)果為T(mén)rue或False。 可以使用單行形式來(lái)做短小簡(jiǎn)單的程序。在單行
28、形式中,按照IfThen判斷的結(jié)果也可以執(zhí)行多條語(yǔ)句。所有語(yǔ)句必須在同一行上并且以冒號(hào)分開(kāi),如: If A>10 Then A=A+1:B二B+A:C=C+B 但使用塊形式的情況更多,塊形式具有更強(qiáng)的結(jié)構(gòu)化與適應(yīng)性,并且通常比較容易閱讀、維護(hù)及調(diào)試。Else和Elself子句都是可選項(xiàng)。在If塊中,可以放置任意多個(gè)Elself子句,但是都必須在Else子句之前。If塊也可以嵌套。當(dāng)程序運(yùn)行到一個(gè)If塊時(shí),條件表達(dá)式將被測(cè)試,如果結(jié)果為T(mén)rue,則在Then之后的語(yǔ)句會(huì)被執(zhí)行。反之,則每個(gè)ElseIf部分的條件表達(dá)式會(huì)依次計(jì)算并加以測(cè)試。如果找到某個(gè)為T(mén)me的條件時(shí),則其緊接在相關(guān)的The
29、n之后的語(yǔ)句會(huì)被執(zhí)行。如果沒(méi)有一個(gè)ElseIf條件表達(dá)式為T(mén)rue(或是根本就沒(méi)有Elself子句),則程序會(huì)執(zhí)行Else部分的語(yǔ)句。而在執(zhí)行完Then或Else之后的語(yǔ)句后,會(huì)從End If之后的語(yǔ)句繼續(xù)執(zhí)行。2Select CaseEnd Select語(yǔ)句 Select CaseEnd Select語(yǔ)句是多分支語(yǔ)句,其中的判斷條件是任何數(shù)值表達(dá)式或字符串表達(dá)式。根據(jù)表達(dá)式的值,來(lái)決定執(zhí)行幾組語(yǔ)句中的其中之一。判斷條件有以下幾種形式: 一個(gè)或多個(gè)表達(dá)式,表達(dá)式之間用“,”隔開(kāi)。 為某個(gè)數(shù)值范圍,格式是:表達(dá)式1 To 表達(dá)式2 為某個(gè)關(guān)系表達(dá)式,格式是:IS<關(guān)系符><表達(dá)
30、式>三,實(shí)驗(yàn)舉例(實(shí)例1) 輸入一個(gè)數(shù),判斷這個(gè)數(shù)的奇偶性。Private Sub command1_click()Dim a As IntegerA = InputBox(”輸入一個(gè)數(shù)“)If a mod 2 = 1 Then MsgBox a & ”是奇數(shù)” Else MsgBox a & ”是偶數(shù)” End lf 圖4-1例1運(yùn)行結(jié)果 End Sub 程序運(yùn)行時(shí),單擊Commandl按鈕,在彈出的對(duì)話框中輸入66,單擊“確定”按鈕,消息框提示66是偶數(shù),如圖4-1所示。 (實(shí)例2) 判斷你輸入的字符的種類。 若是數(shù)字,則提示為數(shù)字;若是小寫(xiě)字母,則提示此字母為小寫(xiě)字
31、母,并將該字母轉(zhuǎn)換為大寫(xiě)字母;若為大寫(xiě)字母,則提示此字母為大寫(xiě)字母,并將該字母轉(zhuǎn)換為小寫(xiě)字母;否則輸出其他字符。 Private Sub Form_click() Dim a As String*1 Dim b As String*1 A = InputBox(”請(qǐng)輸入一個(gè)字符”)If a <= ”9” And a >= ”0“ Then Print a; ”是一個(gè)數(shù)字”Elseif a >= ”A” And a <= ”Z” Then B = Chr(Asc(a) +32) 也可以寫(xiě)為b=LCase(a) Print a; “是一個(gè)大寫(xiě)字母,將”; a; ”變?yōu)樾?xiě)的
32、字母為”;bElself a >= ”a” And a <= ”Z” Then B = UCase(a) 也可以寫(xiě)為b二Chr(Asc(a) - 32) Print a; ”是一個(gè)小寫(xiě)字母,將“;a; ”變?yōu)榇髮?xiě)的字母為”;b ElSe Print a; ”是其他字符” End ifEnd Sub分析:通過(guò)上面的示例我們知道函數(shù)LCase()和UCase(),它們的作用是將字符串中的大寫(xiě)字符變?yōu)樾?xiě)字符或?qū)⑿?xiě)字符變?yōu)榇髮?xiě)字符;函數(shù)Chr()和Asc()函數(shù),它們是將ASC碼值轉(zhuǎn)換為對(duì)應(yīng)的字符和求字符串中首字符的ASC碼值函數(shù)。另外我們也知道了a的ASC碼值比A的ASC碼值大32。
33、觀察運(yùn)行結(jié)果。(實(shí)例3)有A,B,C三個(gè)數(shù),要求按由大到小的順序把它們打印出來(lái)。分析:把一組任意數(shù)按大小進(jìn)行排列是日常工作中經(jīng)常遇到的問(wèn)題。當(dāng)碰到的是少量的數(shù)據(jù)要排序時(shí),可以按最基本的方法考慮,將它們一一進(jìn)行比較。此時(shí),要用到If結(jié)構(gòu)的嵌套形式,嵌套必須完全嵌套,也就是內(nèi)層條件語(yǔ)句必須完全包含在外層條件語(yǔ)句之中。格式為: If<表達(dá)式> Then If<表達(dá)式>Then <語(yǔ)句塊>Else<語(yǔ)句塊>End If ElseIf<表達(dá)式> Then<語(yǔ)句塊>Else<語(yǔ)句塊> End IfEnd If程序如下:Pr
34、ivate Sub Form_click() Dim a As single, b As Single, c As Single a = InputBox(”輸入A的值:”,”輸入A”)b = InputBox(”輸入B的值:”,”輸入B”)c = InputBox(”輸入C的值:”,”輸入C”)If a > b Then If b > C Then Print a, b,CElse if a > C Then Print a,c,b ElsePrint c,a,b End if End ifElseif a > C Then Print b,a,cElse if b&
35、gt;C ThenPrint b,c,aElsePrint c,b,a End if End if End ifEnd Sub實(shí)驗(yàn)五 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康?(1)掌握For語(yǔ)句的使用。 (2)掌握Do WhileUntilLoop與Doloop WhileUntil兩種循環(huán)語(yǔ)句的使用。 (3)加深理解循環(huán)的概念,掌握循環(huán)的規(guī)則及其執(zhí)行過(guò)程。 (4)掌握多重循環(huán)的規(guī)則和程序設(shè)計(jì)方法。(6) 學(xué)會(huì)如何控制循環(huán)條件,防止死循環(huán)或不循環(huán)。二、相關(guān)知識(shí) 如果在指定的條件下多次重復(fù)執(zhí)行一組相同的語(yǔ)句可以通過(guò)循環(huán)來(lái)實(shí)現(xiàn),VB提供了下面幾種形式的循環(huán)語(yǔ)句:1DoLoop循環(huán)語(yǔ)句 Do WhileUnt
36、il<條件> Do 語(yǔ)句塊 語(yǔ)句塊 Exit Do 或 Exit Do 語(yǔ)句塊 語(yǔ)句塊 Loop Loop WhileUntil<條件>2FOR循環(huán)語(yǔ)句 For循環(huán)變量=初值To終值Step步長(zhǎng) 語(yǔ)句塊 Exit For 語(yǔ)句塊Next循環(huán)變量3循環(huán)嵌套應(yīng)注意的事項(xiàng)內(nèi)循環(huán)和外循環(huán)的變量不能同名;外循環(huán)必須完全包含內(nèi)循環(huán),不能交叉;循環(huán)的轉(zhuǎn)移遵循“允許循環(huán)內(nèi)轉(zhuǎn)移,允許轉(zhuǎn)出,禁止轉(zhuǎn)入”的原則。三、實(shí)驗(yàn)舉例(實(shí)例1) 求自然數(shù)N的階乘。 Private Sub Form_Click() Dim s As Single,n As Integer,i As Integer N =
37、 InputBox(“輸入自然數(shù)N”, “求N的階乘”) S = l i = 1 Do While i<=n S = S * i i = i + 1 Loop Print ”n = ”;n,n;”!=”;sEnd Sub分別輸入5,15,觀察結(jié)果.(實(shí)例2) 求e = 1+11!+12!+13!+14!+使精度達(dá)到10-5。 PriVate Sub Command1_CliCk() Dim Sum AS Double Dim t AS Double Dim i AS integer Sum = 1 t = 1For i = 1 TO 100t = t isum = sum + tif t
38、 < 0.00001 then Exit ForEnd ifNext iMsgBox sumEnd Sub 程序運(yùn)行結(jié)果為:_。(實(shí)驗(yàn)3)求sin(x)=x-x3/3!+x5/5!-x7/7!+Private Sub Command1_click Dim x AS Double Dim sum AS Double Dim t AS double Dim i AS integerSum= 0X = inputBox(“請(qǐng)輸入X的值“)t = Xi = 1DOsum = sum + tt = -t * X * X/(2*I)/(2*I+1)I=I+1Loop While Abs(t)>
39、0.000001Print sumEnd Sub 結(jié)果為:_。實(shí)驗(yàn)六 數(shù)組的使用一、實(shí)驗(yàn)?zāi)康?(1)掌握數(shù)組的聲明和數(shù)組元素的引用。 (2)掌握固定數(shù)組和動(dòng)態(tài)數(shù)組的使用方法。 (3)學(xué)會(huì)利用數(shù)組解決一些較為復(fù)雜的問(wèn)題。二、相關(guān)知識(shí)數(shù)組概念 數(shù)組是一組相同類型的變量的集合,在程序中可以用一個(gè)數(shù)組名代表邏輯上相關(guān)的一組數(shù)據(jù)。在Visual Basic中有兩種類型的數(shù)組:固定大小的數(shù)組以及在運(yùn)行時(shí)大小可變的動(dòng)態(tài)數(shù)組,有時(shí)也稱這兩種數(shù)組為定長(zhǎng)數(shù)組和可變長(zhǎng)數(shù)組。數(shù)組必須先聲明后使用。2. 固定數(shù)組固定大小數(shù)組的聲明形式為: Dim數(shù)組名(下標(biāo) ,下標(biāo)2)As類型其中下標(biāo)必須是常數(shù),格式為:下界to上界,
40、省略下界時(shí),默認(rèn)值為0;省略As系統(tǒng)認(rèn)為是變體數(shù)組。3動(dòng)態(tài)數(shù)組 動(dòng)態(tài)數(shù)組的聲明形式為: Dim數(shù)組名()As類型 此時(shí)定義的數(shù)組的大小是不確定的。在使用時(shí),隨時(shí)用 ReDim數(shù)組名(下標(biāo),下標(biāo)2) 語(yǔ)句指定數(shù)組的大小。 在定義動(dòng)態(tài)數(shù)組時(shí)首先在過(guò)程外使用Dim、Private、Public語(yǔ)句聲明下標(biāo)為空的數(shù)組,然后在過(guò)程中用ReDim語(yǔ)句指明該數(shù)組的大小。4數(shù)組元素?cái)?shù)組聲明時(shí)用數(shù)組名表示該數(shù)組的整體,但在具體操作時(shí)是針對(duì)每個(gè)數(shù)組元素進(jìn)行的,因此,數(shù)組的引用單位是數(shù)組元素。三、實(shí)驗(yàn)舉例(實(shí)例1) 打印并輸出5*5方陣中的下三角和上三角元素。 Private Sub Form_click() Di
41、m i, j, sc(4, 4) For i = 0 TO 4For j=0 TO i sc(i, j) = i * 1 + j Print sc(i,j); “ ”;Next j PrintNext iPrintPrintFor i = 0 TO 4Print Tab(5 *I+1);For j=i TO 4 sc(i, j) =I*1+j Print sc(i,j); “ “;Next jPrint Next iEnd sub觀察輸出結(jié)果。(實(shí)例2) 編一個(gè)程序,打印符合楊輝三角形的數(shù)據(jù)列。分析:解決此題所用方法的要點(diǎn)是:定義一個(gè)二維數(shù)組A,在該數(shù)組中,每行的第一個(gè)元素和最后一個(gè)元素都為1
42、,其余各元素等于它上面一行的同一列和前列數(shù)據(jù)之和。Private Sub Form_CliCk()Dim a(9, 9) AS integerFor i = 0 To 9 a(i, i) = 1 a(i, 0) = 1Next iFor I =2 to 9 M=I-1For j = 1 To mA(I,j) = a(m,j-1) +a(m,j)Next jNext iFor i = 0 TO 9For j = 0 to i Print a(I,j);Next jPrint Next iend Sub實(shí)驗(yàn)七 過(guò)程一、實(shí)驗(yàn)?zāi)康?1)掌握子過(guò)程的定義和調(diào)用方法。(2)分清子過(guò)程和函數(shù)過(guò)程的異同。(3
43、)掌握遞歸概念和使用方法。(4)掌握變量、函數(shù)和過(guò)程的作用域。二、相關(guān)知識(shí)(1) 子過(guò)程是在響應(yīng)事件時(shí)執(zhí)行的代碼塊。將模塊中的代碼分成子過(guò)程后,在應(yīng)用程序中查找和修改代碼會(huì)變得更容易。子過(guò)程的語(yǔ)法是:Private|PublicStaticSub 子過(guò)程名(形式參數(shù))語(yǔ)句End Sub 每次調(diào)用過(guò)程都會(huì)執(zhí)行Sub和End Sub之間的語(yǔ)句??梢詫⒆舆^(guò)程放入標(biāo)準(zhǔn)模塊、類模塊和窗體模塊中。按照缺省規(guī)定,所有模塊中的子過(guò)程為Public(公用的),這意味著在應(yīng)用程序中可隨處調(diào)用它們。在Visual Basic中子過(guò)程分為通用過(guò)程和事件過(guò)程兩類。 通用過(guò)程 如果幾個(gè)不同的事件過(guò)程要執(zhí)行同樣的動(dòng)作。應(yīng)將
44、這組公共語(yǔ)句放入一分離開(kāi)的過(guò)程(通用過(guò)程)中,該通用過(guò)程告訴應(yīng)用程序如何完成一項(xiàng)指定的任務(wù)。一旦確定了通用過(guò)程,就必須由事件過(guò)程來(lái)調(diào)用它。 事件過(guò)程 當(dāng)Visual Basic中的對(duì)象對(duì)一個(gè)事件的發(fā)生作出認(rèn)定時(shí),便自動(dòng)用相應(yīng)的事件名字調(diào)用該事件的過(guò)程。因?yàn)槊衷趯?duì)象和代碼之間建立了聯(lián)系,所以說(shuō)事件過(guò)程是附加在窗體和控件上的。(2)子過(guò)程的定義可以在“代碼”窗口輸入過(guò)程頭并按下回車(chē)鍵,系統(tǒng)自動(dòng)添加End Sub語(yǔ)句;也可以通過(guò)“添加過(guò)程”對(duì)話框完成。(3)過(guò)程的調(diào)用與過(guò)程的類型、位置以及在應(yīng)用程序中的使用方式有關(guān)。調(diào)用Sub過(guò)程有兩種方法:用Call語(yǔ)句調(diào)用或直接調(diào)用。當(dāng)使用Call語(yǔ)句時(shí),參數(shù)
45、必須在括號(hào)內(nèi)。若直接調(diào)用,則也必須省略參數(shù)兩邊的括號(hào)。函數(shù)過(guò)程的調(diào)用與VB內(nèi)部函數(shù)的調(diào)用方法相同,可以在表達(dá)式中直接使用;也可以像調(diào)用Sub過(guò)程一樣,但此時(shí)VB將放棄函數(shù)返回值。(4)向過(guò)程傳遞參數(shù)有按數(shù)值傳遞和按地址傳遞兩種方法。按地址傳遞參數(shù)使過(guò)程用變量的內(nèi)存地址去訪問(wèn)實(shí)際變量的內(nèi)容,這是VB默認(rèn)的參數(shù)傳遞方式。按值(ByVal)傳遞參數(shù)比按地址(ByRef)快,如果過(guò)程中不需改變參數(shù)的值,盡量采用按值(ByVal)來(lái)傳遞。一般來(lái)說(shuō),過(guò)程調(diào)用中的參數(shù)個(gè)數(shù)應(yīng)等于過(guò)程說(shuō)明的參數(shù)個(gè)數(shù),但也可以是不確定的。VB允許過(guò)程接受可選參數(shù)和不定量參數(shù)。三、實(shí)驗(yàn)舉例(實(shí)例1)靜態(tài)變量與一般變量對(duì)比。Priv
46、ate Sub Command1_click() Dim i As integerPrint ”a”,”b”For I=1 to 10 Call f()Next iEnd SubSub f() Static a as integerDim b As integera = a + 1b = b + 1Print a,bEnd Sub觀察輸出結(jié)果。(實(shí)例2)通過(guò)點(diǎn)擊窗體事件,來(lái)循環(huán)改變窗體標(biāo)題名字練習(xí)。Private Sub Form1_CliCk()Static index As integerindex = index + lSelect case indexCase l Form1.capt
47、ion= ”單項(xiàng)測(cè)試題“Case 2 Formlcaption = ”Windows操作題”Case 3 Forml.caption = “Word操作題”Case 4 FormlCaption = “Excel操作題”Case 5 Form1Caption= ”網(wǎng)絡(luò)操作題”Case ElseIndex = 0 End SelectEnd Sub觀察結(jié)果。實(shí)驗(yàn)八 函數(shù)一、實(shí)驗(yàn)?zāi)康?(1)掌握自定義函數(shù)的定義和調(diào)用方法。 (2)掌握形參和實(shí)參的對(duì)應(yīng)關(guān)系,分清值傳遞和地址傳遞的區(qū)別。 (3)掌握VB窗體模塊、標(biāo)準(zhǔn)模塊的創(chuàng)建和使用。二、相關(guān)知識(shí) Visual Basic包含內(nèi)置的或內(nèi)部的函數(shù),還可用Function語(yǔ)句編寫(xiě)自己的Function過(guò)程。 函數(shù)過(guò)程的語(yǔ)法格式是: Private|Public)StaticFunction函數(shù)名(形式參數(shù)) As函數(shù)類型 語(yǔ)句 End Function Function過(guò)程的特點(diǎn)是: 一般來(lái)說(shuō),語(yǔ)句或表達(dá)式的右邊包含函數(shù)過(guò)程名和參數(shù)(returnvalue = function),這就調(diào)用了函數(shù)。 與變量完全一樣,函數(shù)過(guò)程有數(shù)據(jù)類型,其決定了返回值的類型。如果沒(méi)有As子句,缺省的數(shù)據(jù)類型為Variant。 給函數(shù)名自身賦一個(gè)值,就可返回這個(gè)值。例如,下面
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 比粗細(xì)課件教學(xué)課件
- 2024健身房與會(huì)員之間的會(huì)員服務(wù)合同
- 2024年建筑工人勞務(wù)雇傭協(xié)議
- 2024年度藝人非獨(dú)家合作合同及演出安排
- 2024年廣告發(fā)布與媒體推廣合同
- 2024年度廢舊物資回收利用合同的履行
- 2024年度技術(shù)研發(fā)計(jì)算機(jī)軟件開(kāi)發(fā)合同
- 制作高端課件教學(xué)課件
- 04年數(shù)據(jù)中心運(yùn)維服務(wù)合同
- 2024年廢棄物處理服務(wù)合同(含危險(xiǎn)廢物)
- 地標(biāo),DB11890-2012城鎮(zhèn)污水處理廠水污染物排放標(biāo)準(zhǔn)(北京)
- 模擬電子技術(shù)課程思政教學(xué)案例探究
- 中職班級(jí)精細(xì)化管理的實(shí)踐探究
- 消防安全操作規(guī)程(20211127050648)
- 設(shè)備包機(jī)制度
- 大體積混凝土養(yǎng)護(hù)方案
- 1803綜采工作面供電設(shè)計(jì)
- 胎心聽(tīng)診技術(shù)PPT參考課件
- 卵巢畸胎瘤PPT優(yōu)秀課件
- 《三只小豬》劇本
- 藥廠生產(chǎn)過(guò)程中的危險(xiǎn)有害因素分析及安全對(duì)策
評(píng)論
0/150
提交評(píng)論