




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第二部分MATLAB的程序設計
2.1腳本文件和函數文件2.2函數調用和參數傳遞2.3MATLAB的程序結構和控制流2.4M文件的調試12.1腳本文件和函數文件2.1.1M腳本文件對于一些比較簡單的問題,在指令窗中直接輸入指令計算。對于復雜計算,采用腳本文件(Scriptfile)最為合適。MATLAB只是按文件所寫的指令執(zhí)行。M腳本文件的特點是:腳本文件的構成比較簡單,只是一串按用戶意圖排列而成的(包括控制流向指令在內的)MATLAB指令集合。腳本文件運行后,所產生的所有變量都駐留在MATLAB基本工作空間(Baseworkspace)中。只要用戶不使用清除指令(clear),MATLAB指令窗不關閉,這些變量將一直保存在基本工作空間中。M文件有兩種形式:腳本文件(ScriptFile)和函數文件(FunctionFile)。這兩種文件的擴展名,均為“.m”。22.1腳本文件和函數文件(續(xù)1)2.1.2M函數文件與腳本文件不同,函數文件猶如一個“黑箱”,把一些數據送進并經加工處理,再把結果送出來。MATLAB提供的函數指令大部分都是由函數文件定義的。M函數文件的特點是:從形式上看,與腳本文件不同,函數文件的笫一行總是以“function”引導的“函數申明行”。從運行上看,與腳本文件運行不同,每當函數文件運行,MATLAB就會專門為它開辟一個臨時工作空間,稱為函數工作空間(Functionworkspace)
。當執(zhí)行文件最后一條指令時,就結束該函數文件的運行,同時該臨時函數空間及其所有的中間變量就立即被清除。MATLAB允許使用比“標稱數目”較少的輸入輸出宗量,實現對函數的調用。32.1腳本文件和函數文件(續(xù)2)2.1.3M文件的一般結構由于從結構上看,腳本文件只是比函數文件少一個“函數申明行”,所以只須描述清楚函數文件的結構。典型M函數文件的結構如下:函數申明行:位于函數文件的首行,以關鍵字function開頭,函數名以及函數的輸入輸出宗量都在這一行被定義。笫一注釋行:緊隨函數申明行之后以%開頭笫一注釋行。該行供lookfor關鍵詞查詢和help在線幫助使用。在線幫助文本區(qū):笫一注釋行及其之后的連續(xù)以%開頭的所有注釋行構成整個在線幫助文本。編寫和修改記錄:與在線幫助文本區(qū)相隔一個“空”行,也以%開頭,標志編寫及修改該M文件的作者和日期等。函數體:為清晰起見,它與前面的注釋以“空”行相隔。例2_2_1:M函數文件示例。42.2函數調用和參數傳遞2.2.1局部變量和全局變量局部(Local)變量:它存在于函數空間內部的中間變量,產生于該函數的運行過程中,其影響范圍也僅限于該函數本身。全局(Global)變量:通過global指令,MATLAB也允許幾個不同的函數空間以及基本工作空間共享同一個變量,這種被共享的變量稱為全局變量。2.2.2函數調用在MATLAB中,調用函數的常用形式是:[輸出參數1,輸出參數2,…]=函數名(輸入參數1,輸入參數2,…)函數調用可以嵌套,一個函數可以調用別的函數,甚至調用它自己(遞歸調用)。52.2函數調用和參數傳遞(續(xù))2.2.3參數傳遞MATLAB在函數調用上有一個與眾不同之處:函數所傳遞的參數具有可調性。傳遞參數數目的可調性來源于如下兩個MATLAB永久變量:函數體內的nargin
給出調用該函數時的輸入參數數目。函數體內的nargout
給出調用該函數時的輸出參數數目。只要在函數文件中包括這兩個變量,就可以知道該函數文件調用時的輸入參數和輸出參數數目。值得注意:nargin、nargout
本身都是函數,不是變量,所以用戶不能賦值,也不能顯示。(參考:circle.m,am1.m)62.3MATLAB的程序結構和控制流2.3.1程序結構循環(huán)結構:MATLAB提供兩種循環(huán)方式。順序結構分支結構:if—else—end。for—end循環(huán)和while---end循環(huán)。2.3.2程序流控制常用指令:return,echo,input,pause,keyboard,break。switch---case結構。try---catch結構。腳本文件(ScriptFile)警示指令:error,warning。72.3MATLAB的程序結構和控制流(續(xù))2.3.3圖形用戶界面(GUI)編程現代的主流應用程序已經從命令行的交互方式轉變?yōu)橐詧D形界面為主的交互方式,這主要是由于它給用戶帶來了操作和控制的方便與靈活性。(面向對象編程)MATLAB能夠以比較簡單的方式實現一系列的圖形界面功能。通過對控件、菜單屬性的設置和
Callback的編寫,就能夠滿足大多數用戶的需求。
控件的Callback屬性:Callback屬性的取值是字符串,可以是某個M文件名或一小段MATLAB語句。當用戶激活控件對象(例如:在控件對象圖標上單擊鼠標左鍵)時,應用程序就運行Callback屬性定義的子程序。
菜單的Callback屬性:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 后置埋件承包協議書
- 廠房維修維護協議書
- 廈門加裝電梯協議書
- 場地冷庫出租協議書
- 土地有償贈予協議書
- 原始賬戶轉讓協議書
- 在營店鋪轉讓協議書
- 土地分配合同協議書
- 華為售后免責協議書
- 別墅外墻改造協議書
- 國家開放大學《Python語言基礎》實驗2:基本數據類型和表達式計算參考答案
- 員工關系管理專項職業(yè)能力考核規(guī)范cxy
- 2024統編本語文二年級下冊第四、第五單元測試題及答案(各一套)
- 美術學校工藝美術專業(yè)傳承和創(chuàng)新研究
- 多目標粒子群優(yōu)化算法的改進及應用研究
- 兩家公司合作可行性方案
- 項目管理培訓課程
- 數據庫性能優(yōu)化策略
- 糖尿病性周圍神經病的護理查房
- 微電子機械系統(MEMS)傳感器電路
- 音樂演唱會居間協議書
評論
0/150
提交評論