e罩杯大胸爆乳交在线观看_九九久久精品国产免费_三级片免费播放网站_制服丝袜亚洲中文欧美在线_国产 亚洲 制服丝袜_国产主播福利一二区无删减_男男暴菊GAY无套网站_极品美女午夜福利_小荡货好紧好爽高清视频_人成在线观看视频无码

MATLAB編程基礎(chǔ)

MATLAB編程基礎(chǔ)

MATLAB有兩種常用的工作方式:一種是交互式命令操作方式,另外一種是M文件的編程工作方式。在M文件的編程工作方式下,MATLAB可以像其他高級語言一樣具有數(shù)據(jù)結(jié)構(gòu)、控制流、輸入輸出和面向?qū)ο缶幊痰哪芰?,即編寫一種擴展名為.mMATLAB程序,簡稱M文件。M文件編程具有語法簡單、使用方便、調(diào)試容易等特點,被人們稱為第四代編程語言。

1 M文件

M文件是由MATLAB命令或函數(shù)組成的文本文件,以.m為擴展名。M文件有兩種形式,即命令文件(Script)和函數(shù)文件(Function)。命令文件是以命令和函數(shù)的結(jié)合,命令文件運行時不需要任何輸入?yún)?shù),也沒有輸出參數(shù),MATLAB自動按順序執(zhí)行命令文件中的命令。函數(shù)文件使用Function聲明的M文件,可以在文件中,輸入?yún)?shù)和返回參數(shù),一般情況下,用戶不能靠單獨輸入其文件名來運行函數(shù)文件,而必須先給出輸入?yún)?shù),然后調(diào)用M文件函數(shù)。值得注意的是,函數(shù)文件是M文件最重要的組成部分,以下主要對函數(shù)文件進行介紹。

2 M文件函數(shù)的基本結(jié)構(gòu)

MATLAB提供了3種結(jié)構(gòu)允許用戶創(chuàng)建自己的函數(shù),即M文件函數(shù)(簡稱M函數(shù))、匿名函數(shù)和內(nèi)聯(lián)函數(shù)。其中,最常用M文件函數(shù)結(jié)構(gòu)。

MATLAB語言的函數(shù)文件包含如下5個部分。

(1)   函數(shù)題頭:指函數(shù)的定義行,是函數(shù)語句的第一行,在該行中將定義函數(shù)名、輸入變量列表及輸出變量列表等。

(2)   HI行:指函數(shù)幫助文本的第一行,為該函數(shù)文件的幫助主題,當使用lookfor命令時,可以查看到該行信息。

(3)   幫助信息:這部分提供了函數(shù)的完整的幫助信息,包括HI之后至第一個可執(zhí)行行或空行為止的所有注釋語句,通過MATLAB語言的幫助系統(tǒng)查看函數(shù)的幫助信息時,將顯示該部分。

(4)   函數(shù)體;指函數(shù)代碼段,也是函數(shù)的主體部分。

(5)   注釋部分:指對函數(shù)體中各語句的解釋和說明文本,注釋語句是以%引導(dǎo)的。

例如:

   function[output,output2]=function—exampleinput1input2  %    函數(shù)題頭

   %This is function to exchange two matrices               %    HI

   %input1,input2 are input variables                           %    幫助信息

   %output1output2 are output variables                    %    幫助信息

   output1=input2;                                                        %     函數(shù)體

   output2=input1;                                                        %     函數(shù)體

   %The end of this example function

3 程序流控制

MATLAB提供了5種控制程序流的結(jié)構(gòu):for循環(huán)結(jié)構(gòu)、while循環(huán)結(jié)構(gòu)、if-else-end分支結(jié)構(gòu)和switch-case結(jié)構(gòu)。由于MATLAB的這5種控制指令用法與C語言的十分類似,主要區(qū)別在于不需要用括號( )命令組括起來,而是用end來標識命令組結(jié)束。

(1)for循環(huán)結(jié)構(gòu)

for循環(huán)結(jié)構(gòu)的語法形式為:

for x=a : b : c     % a為循環(huán)初值,b為循環(huán)步長,c為循環(huán)終值。

(commands1)     

end

(2) while循環(huán)結(jié)構(gòu)

while循環(huán)結(jié)構(gòu)的語法結(jié)構(gòu)為:

while  expression    %循環(huán)判決條件

(commands1)        % expression為邏輯真時,執(zhí)行組命令commands1

end

(3) if-else-end分支結(jié)構(gòu)

if-else-end指令為程序流提供了一種分支結(jié)構(gòu),指令形式如下:

if expression                     %判決條件;

(commands1)             %expression為邏輯真時,執(zhí)行組命令commands1

else (commands2)     ;             %expression為邏輯假時,執(zhí)行組命令commands2。

end

(4) switch-case結(jié)構(gòu)

switch-case指令的一般語法結(jié)構(gòu)形式如下:

 

switch ex                                 %ex為一標量或字符;

case test1

(commands1)             %ex等于test1時,執(zhí)行該組命令commands1%然后跳出該結(jié)構(gòu);

case test2

……

otherwise                          %otherwise指令可以不存在;

(commands)               %ex不等于前面所有檢測值,則執(zhí)行該組命令。

end

(5) try-catch分支結(jié)構(gòu)

try-catch指令的一般語法結(jié)構(gòu)形式如下:

try

(commands1)             %該組命令commands1總被執(zhí)行;%若正確,則跳出此結(jié)構(gòu)

catch

(commands2)             %僅當組命令commands1出現(xiàn)執(zhí)行錯誤時,

%組命令commands2才被執(zhí)行

end

4 Matlab函數(shù)創(chuàng)建與調(diào)試

MATLAB的M文件是通過M文件編輯/調(diào)試器窗口(Editor/Debugger)來創(chuàng)建的。單擊MATLAB桌面上的圖標,或者單擊菜單“File”—“New”—“M-file”,可打開空白的M文件編輯器,也可以通過打開已有的M文件來打開M文件編輯器。如圖A-8所示為打開已創(chuàng)建的M文件。MATLAB在Editor/Debugger窗口的Debug菜單中,提供了一些方法和函數(shù)用于M文件的調(diào)試;支持用戶進行斷點調(diào)試。同時在,用戶創(chuàng)建和調(diào)試M文件時,可以在MATLAB的命令窗口中,運行mlint函數(shù)來分析M文件中的語法錯誤以及其他可能存在的問題和不完善的地方。

M文件編輯.png