第四講-MATLAB程序設(shè)計(jì)_第1頁(yè)
第四講-MATLAB程序設(shè)計(jì)_第2頁(yè)
第四講-MATLAB程序設(shè)計(jì)_第3頁(yè)
第四講-MATLAB程序設(shè)計(jì)_第4頁(yè)
第四講-MATLAB程序設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩53頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

MATLAB程序設(shè)計(jì)教學(xué)內(nèi)容M文件介紹函數(shù)流程控制函數(shù)變量調(diào)試程序優(yōu)化程序1M文件1.1M文件概述用MATLAB語(yǔ)言編寫(xiě)的程序,稱(chēng)為M文件。M文件可以根據(jù)調(diào)用方式的不同分為兩類(lèi):命令文件(ScriptFile)和函數(shù)文件(FunctionFile)。1.2M文件的建立與打開(kāi)

M文件是一個(gè)文本文件,它可以用任何編輯程序來(lái)建立和編輯,而一般常用且最為方便的是使用MATLAB提供的文本編輯器。1.建立新的M文件

2.打開(kāi)已有的M文件

函數(shù)式M文件比命令式M文件相對(duì)復(fù)雜一些,命令文件不需要自帶參數(shù),也不一定返回結(jié)果,而函數(shù)文件一般要自帶參數(shù),并且有返回結(jié)果,以便于更好的把整個(gè)程序連為一段。函數(shù)文件也可以不帶參數(shù),此時(shí)文件中一般使用一些全局變量來(lái)實(shí)現(xiàn)與外界和其他函數(shù)之間的數(shù)據(jù)交換。函數(shù)文件的第一行以function開(kāi)始,說(shuō)明此文件是一個(gè)函數(shù)。其實(shí)質(zhì)為用戶(hù)向MATLAB函數(shù)庫(kù)中添加的子函數(shù)。在默認(rèn)情況下,函數(shù)文件中的變量都是局部變量,僅在函數(shù)運(yùn)行期間有效,函數(shù)運(yùn)行結(jié)束后,這些變量將從工作區(qū)中清除。函數(shù)文件的基本結(jié)構(gòu)函數(shù)文件由function語(yǔ)句引導(dǎo),其基本結(jié)構(gòu)為:

function輸出形參表=函數(shù)名(輸入形參表)

注釋說(shuō)明部分函數(shù)體語(yǔ)句其中以function開(kāi)頭的一行為引導(dǎo)行,表示該M文件是一個(gè)函數(shù)文件。函數(shù)名的命名規(guī)則與變量名相同。輸入形參為函數(shù)的輸入?yún)?shù),輸出形參為函數(shù)的輸出參數(shù)。當(dāng)輸出形參多于一個(gè)時(shí),則應(yīng)該用方括號(hào)括起來(lái)。例編寫(xiě)函數(shù)文件求半徑為r的圓的面積和周長(zhǎng)。函數(shù)文件如下:function[s,p]=fcircle(r)%CIRCLEcalculatetheareaandperimeterofacircleofradiir%r圓半徑%s圓面積%p圓周長(zhǎng)s=pi*r*r;p=2*pi*r;

函數(shù)調(diào)用函數(shù)調(diào)用的一般格式是:

[輸出實(shí)參表]=函數(shù)名(輸入實(shí)參表)

要注意的是,函數(shù)調(diào)用時(shí)各實(shí)參出現(xiàn)的順序、個(gè)數(shù),應(yīng)與函數(shù)定義時(shí)形參的順序、個(gè)數(shù)一致,否則會(huì)出錯(cuò)。函數(shù)調(diào)用時(shí),先將實(shí)參傳遞給相應(yīng)的形參,從而實(shí)現(xiàn)參數(shù)傳遞,然后再執(zhí)行函數(shù)的功能。

例利用函數(shù)文件,實(shí)現(xiàn)直角坐標(biāo)(x,y)與極坐標(biāo)(ρ,θ)之間的轉(zhuǎn)換。函數(shù)文件tran.m:function[rho,theta]=tran(x,y)rho=sqrt(x*x+y*y);theta=atan(y/x);

調(diào)用tran.m的命令文件main1.m:x=input('Pleaseinputx=:');y=input('Pleaseinputy=:');[rho,the]=tran(x,y);rhothe

例利用函數(shù)的遞歸調(diào)用,求n!。

n!本身就是以遞歸的形式定義的:顯然,求n!需要求(n-1)!,這時(shí)可采用遞歸調(diào)用。遞歸調(diào)用函數(shù)文件factor.m如下:functionf=factor(n)ifn<=1f=1;elsef=factor(n-1)*n;%遞歸調(diào)用求(n-1)!end在MATLAB中,函數(shù)可以嵌套調(diào)用,即一個(gè)函數(shù)可以調(diào)用別的函數(shù),甚至調(diào)用它自身。一個(gè)函數(shù)調(diào)用它自身稱(chēng)為函數(shù)的遞歸調(diào)用。例分別建立命令文件和函數(shù)文件,將華氏溫度f(wàn)轉(zhuǎn)換為攝氏溫度c。程序1:首先建立命令文件并以文件名f2c.m存盤(pán)。clear;%清除工作空間中的變量f=input('InputFahrenheittemperature:');c=5*(f-32)/9然后在MATLAB的命令窗口中輸入f2c,將會(huì)執(zhí)行該命令文件,執(zhí)行情況為:InputFahrenheittemperature:73c=22.7778程序2:首先建立函數(shù)文件f2c.m。functionc=f2c(f)c=5*(f-32)/9然后在MATLAB的命令窗口調(diào)用該函數(shù)文件。clear;y=input('InputFahrenheittemperature:');x=f2c(y)輸出情況為:InputFahrenheittemperature:70c=21.1111x=21.11112、函數(shù)流程控制順序結(jié)構(gòu)選擇結(jié)構(gòu)循環(huán)語(yǔ)句1.?dāng)?shù)據(jù)的輸入從鍵盤(pán)輸入數(shù)據(jù),則可以使用input函數(shù)來(lái)進(jìn)行,該函數(shù)的調(diào)用格式為:

A=input(提示信息,選項(xiàng));其中提示信息為一個(gè)字符串,用于提示用戶(hù)輸入什么樣的數(shù)據(jù)。如果在input函數(shù)調(diào)用時(shí)采用's'選項(xiàng),則允許用戶(hù)輸入一個(gè)字符串。例如,想輸入一個(gè)人的姓名,可采用命令:xm=input('What''syourname?','s');2.1順序結(jié)構(gòu)MATLAB提供的命令窗口輸出函數(shù)主要有disp函數(shù),其調(diào)用格式為

disp(輸出項(xiàng))其中輸出項(xiàng)既可以為字符串,也可以為矩陣。2.?dāng)?shù)據(jù)的輸出例輸入x,y的值,并將它們的值互換后輸出。程序如下:

x=input('Inputxplease.');y=input('Inputyplease.');z=x;x=y;y=z;disp(x);disp(y);例求一元二次方程ax2+bx+c=0的根。程序如下:a=input('a=?');b=input('b=?');c=input('c=?');d=b*b-4*a*c;x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)];disp(['x1=',num2str(x(1)),',x2=',num2str(x(2))]);暫停程序的執(zhí)行可以使用pause函數(shù),其調(diào)用格式為:

pause(延遲秒數(shù))

如果省略延遲時(shí)間,直接使用pause,則將暫停程序,直到用戶(hù)按任一鍵后程序繼續(xù)執(zhí)行。若要強(qiáng)行中止程序的運(yùn)行可使用Ctrl+C命令。3.程序的暫停1.if語(yǔ)句在MATLAB中,if語(yǔ)句有3種格式。

(1)單分支if語(yǔ)句:if條件語(yǔ)句組

end

當(dāng)條件成立時(shí),則執(zhí)行語(yǔ)句組,執(zhí)行完之后繼續(xù)執(zhí)行if語(yǔ)句的后繼語(yǔ)句,若條件不成立,則直接執(zhí)行if語(yǔ)句的后繼語(yǔ)句。2.2選擇結(jié)構(gòu)

(2)雙分支if語(yǔ)句:if條件語(yǔ)句組1else

語(yǔ)句組2end

當(dāng)條件成立時(shí),執(zhí)行語(yǔ)句組1,否則執(zhí)行語(yǔ)句組2,語(yǔ)句組1或語(yǔ)句組2執(zhí)行后,再執(zhí)行if語(yǔ)句的后繼語(yǔ)句。例計(jì)算分段函數(shù)的值。

程序如下:x=input('請(qǐng)輸入x的值:');ifx==10y=cos(x+1)+sqrt(x*x+1);elsey=x*sqrt(x+sqrt(x));enddisp(y);

(3)多分支if語(yǔ)句:if條件1

語(yǔ)句組1elseif條件2

語(yǔ)句組2……elseif條件m

語(yǔ)句組melse

語(yǔ)句組nend語(yǔ)句用于實(shí)現(xiàn)多分支選擇結(jié)構(gòu)。例輸入一個(gè)字符,若為大寫(xiě)字母,則輸出其對(duì)應(yīng)的小寫(xiě)字母;若為小寫(xiě)字母,則輸出其對(duì)應(yīng)的大寫(xiě)字母;若為數(shù)字字符則輸出其對(duì)應(yīng)的數(shù)值,若為其他字符則原樣輸出。c=input('請(qǐng)輸入一個(gè)字符','s');ifc>='A'&c<='Z'disp(setstr(abs(c)+abs('a')-abs('A')));elseifc>='a'&c<='z'disp(setstr(abs(c)-abs('a')+abs('A')));elseifc>='0'&c<='9'disp(abs(c)-abs('0'));elsedisp(c);end2.switch語(yǔ)句

switch語(yǔ)句根據(jù)表達(dá)式的取值不同,分別執(zhí)行不同的語(yǔ)句,其語(yǔ)句格式為:

switch表達(dá)式

case表達(dá)式1

語(yǔ)句組1case表達(dá)式2

語(yǔ)句組2……case表達(dá)式m

語(yǔ)句組motherwise

語(yǔ)句組nend當(dāng)表達(dá)式的值等于表達(dá)式1的值時(shí),執(zhí)行語(yǔ)句組1,當(dāng)表達(dá)式的值等于表達(dá)式2的值時(shí),執(zhí)行語(yǔ)句組2,…,當(dāng)表達(dá)式的值等于表達(dá)式m的值時(shí),執(zhí)行語(yǔ)句組m,當(dāng)表達(dá)式的值不等于case所列的表達(dá)式的值時(shí),執(zhí)行語(yǔ)句組n。當(dāng)任意一個(gè)分支的語(yǔ)句執(zhí)行完后,直接執(zhí)行switch語(yǔ)句的下一句。例根據(jù)變量num的值來(lái)決定顯示的內(nèi)容.num=input('請(qǐng)輸入一個(gè)數(shù)');switchnumcase-1disp('Iamateacher.');case0disp('Iamastudent.');case1disp('Youareateacher.');otherwisedisp('Youareastudent.');end3.try語(yǔ)句語(yǔ)句格式為:try

語(yǔ)句組1catch

語(yǔ)句組2endtry語(yǔ)句先試探性執(zhí)行語(yǔ)句組1,如果語(yǔ)句組1在執(zhí)行過(guò)程中出現(xiàn)錯(cuò)誤,則將錯(cuò)誤信息賦給保留的lasterr變量,并轉(zhuǎn)去執(zhí)行語(yǔ)句組2。例矩陣乘法運(yùn)算要求兩矩陣的維數(shù)相容,否則會(huì)出錯(cuò)。先求兩矩陣的乘積,若出錯(cuò),則自動(dòng)轉(zhuǎn)去求兩矩陣的點(diǎn)乘。程序如下:A=[1,2,3;4,5,6];B=[7,8,9;10,11,12];tryC=A*B;catchC=A.*B;enddisp(C);disp(lasterr);%顯示出錯(cuò)原因運(yùn)行結(jié)果如下:

71627405572Errorusing==>mtimesInnermatrixdimensionsmustagree.1.for語(yǔ)句for語(yǔ)句的格式為:for循環(huán)變量=表達(dá)式1:表達(dá)式2:表達(dá)式3

循環(huán)體語(yǔ)句

end其中表達(dá)式1的值為循環(huán)變量的初值,表達(dá)式2的值為步長(zhǎng),表達(dá)式3的值為循環(huán)變量的終值。步長(zhǎng)為1時(shí),表達(dá)式2可以省略。2.3循環(huán)結(jié)構(gòu)例一個(gè)三位整數(shù)各位數(shù)字的立方和等于該數(shù)本身則稱(chēng)該數(shù)為水仙花數(shù)。輸出全部水仙花數(shù)。程序如下:form=100:999m1=fix(m/100);%求m的百位數(shù)字m2=rem(fix(m/10),10);%求m的十位數(shù)字m3=rem(m,10);%求m的個(gè)位數(shù)字ifm==m1*m1*m1+m2*m2*m2+m3*m3*m3disp(m)endendfor語(yǔ)句更一般的格式為:

for循環(huán)變量=矩陣表達(dá)式循環(huán)體語(yǔ)句

end

執(zhí)行過(guò)程是依次將矩陣的各列元素賦給循環(huán)變量,然后執(zhí)行循環(huán)體語(yǔ)句,直至各列元素處理完畢。例寫(xiě)出下列程序的執(zhí)行結(jié)果。

s=0;a=[12,13,14;15,16,17;18,19,20;21,22,23];fork=as=s+k;enddisp(s');程序運(yùn)行結(jié)果為:39485766即分別求出矩陣每行元素之和。2.while語(yǔ)句

while語(yǔ)句的一般格式為:

while(條件)

循環(huán)體語(yǔ)句

end

其執(zhí)行過(guò)程為:若條件成立,則執(zhí)行循環(huán)體語(yǔ)句,執(zhí)行后再判斷條件是否成立,如果不成立則跳出循環(huán)。

例從鍵盤(pán)輸入若干個(gè)數(shù),當(dāng)輸入0時(shí)結(jié)束輸入,求這些數(shù)的平均值和它們之和。程序如下:sum=0;cnt=0;val=input('Enteranumber(endin0):');while(val~=0)sum=sum+val;cnt=cnt+1;val=input('Enteranumber(endin0):');endif(cnt>0)summean=sum/cntend3.break語(yǔ)句和continue語(yǔ)句與循環(huán)結(jié)構(gòu)相關(guān)的語(yǔ)句還有break語(yǔ)句和continue語(yǔ)句。它們一般與if語(yǔ)句配合使用。break語(yǔ)句用于終止循環(huán)的執(zhí)行。當(dāng)在循環(huán)體內(nèi)執(zhí)行到該語(yǔ)句時(shí),程序?qū)⑻鲅h(huán),繼續(xù)執(zhí)行循環(huán)語(yǔ)句的下一語(yǔ)句。continue語(yǔ)句控制跳過(guò)循環(huán)體中的某些語(yǔ)句。當(dāng)在循環(huán)體內(nèi)執(zhí)行到該語(yǔ)句時(shí),程序?qū)⑻^(guò)循環(huán)體中所有剩下的語(yǔ)句,繼續(xù)下一次循環(huán)。例求[100,200]之間第一個(gè)能被21整除的整數(shù)。程序如下:forn=100:200ifrem(n,21)~=0continueendbreakenddisp(n)4.循環(huán)的嵌套如果一個(gè)循環(huán)結(jié)構(gòu)的循環(huán)體又包括一個(gè)循環(huán)結(jié)構(gòu),就稱(chēng)為循環(huán)的嵌套,或稱(chēng)為多重循環(huán)結(jié)構(gòu)。例3-13若一個(gè)數(shù)等于它的各個(gè)真因子之和,則稱(chēng)該數(shù)為完數(shù),如6=1+2+3,所以6是完數(shù)。求[1,500]之間的全部完數(shù)。form=1:500s=0;fork=1:m/2ifrem(m,k)==0s=s+k;endendifm==sdisp(m);endend3.函數(shù)變量局部變量全局變量永久變量局部變量每個(gè)函數(shù)都有自己的局部變量,這些變量存儲(chǔ)在該函數(shù)獨(dú)立的工作區(qū)中,與其他函數(shù)的變量及主工作區(qū)中的變量分開(kāi)存儲(chǔ)。當(dāng)函數(shù)調(diào)用結(jié)束時(shí),這些變量隨之刪除,不保存在內(nèi)存中。并且,除了函數(shù)返回值,該函數(shù)不改變工作區(qū)中其他變量的值。然而命令文件沒(méi)有獨(dú)立的工作區(qū),當(dāng)通過(guò)命令窗口調(diào)用命令文件時(shí),命令文件分享主工作區(qū),當(dāng)函數(shù)調(diào)用命令文件時(shí),命令文件分享主調(diào)函數(shù)的工作區(qū)。需要注意的是,如果命令文件中改變了工作區(qū)中變量的值,則在命令文件調(diào)用結(jié)束后,該變量的值發(fā)生改變。在函數(shù)中,變量默認(rèn)為局部變量。全局變量局部變量只在一個(gè)工作區(qū)內(nèi)有效,無(wú)論是函數(shù)工作區(qū)還是MATLAB主工作區(qū)。與局部變量不同,全局變量可以在定義該變量的全部工作區(qū)中有效。當(dāng)在一個(gè)工作區(qū)內(nèi)改變?cè)撟兞康闹禃r(shí),該變量在其他工作區(qū)中的變量同時(shí)改變。任何函數(shù)如果需要使用全局變量,則必須首先聲明,聲明格式為:global變量名1變量名2如果一個(gè)M文件中包含的子函數(shù)需要訪問(wèn)全局變量,則需在子函數(shù)中聲明該變量,如果需要在命令行中訪問(wèn)該變量,則需在命令行中聲明該變量。例全局變量應(yīng)用示例。先建立函數(shù)文件wadd.m,該函數(shù)將輸入的參數(shù)加權(quán)相加。functionf=wadd(x,y)globalALPHABETAf=ALPHA*x+BETA*y;

在命令窗口中輸入:globalALPHABETAALPHA=1;BETA=2;s=wadd(1,2)永久變量除局部變量和全局變量外,MATLAB中還有一種變量類(lèi)型為永久變量。永久變量的特點(diǎn)為:只能在M文件內(nèi)部定義;只有該變量從屬的函數(shù)能夠訪問(wèn)該變量;當(dāng)函數(shù)運(yùn)行結(jié)束時(shí),該變量的值保留在內(nèi)存中,因此當(dāng)該函數(shù)再次被調(diào)用時(shí),可以再次利用這些變量。永久變量的定義方法為:persistent變量名1變量名2。

程序的調(diào)用(1)主函數(shù)(2)子函數(shù)(3)局部函數(shù)

M文件中的第一個(gè)函數(shù)就叫做主函數(shù),前邊章節(jié)中所引用的函數(shù)事實(shí)上都是主函數(shù),主函數(shù)之后可以是任意數(shù)量的子函數(shù),它們可以作為主程序的子程序.一般來(lái)說(shuō),在命令窗口或是其他的M文件只能調(diào)用主函數(shù),調(diào)用的時(shí)候就是直接調(diào)用其函數(shù)名.主函數(shù)比如,函數(shù)average的M文件average.m如下:functiony=average(x)%AVERAGEMeanofvectorelements.y=sum(x)/length(x);%Actualcomputation子函數(shù)

與其他的高級(jí)語(yǔ)言一樣,在MATLAB7語(yǔ)言中也可以很方便地定義子函數(shù),用來(lái)擴(kuò)充函數(shù)的功能。在函數(shù)文件中題頭定義的函數(shù)為主函數(shù),而在函數(shù)體內(nèi)定義的其他函數(shù)都被視為子函數(shù)。子函數(shù)只能為主函數(shù)或同一主函數(shù)下的其他子函數(shù)所使用。(必須和相應(yīng)的主函數(shù)放到同一目錄下!)例利用函數(shù)的遞歸調(diào)用,求n!.n!本身就是以遞歸的形式定義的:顯然,求n!需要求(n-1)!,這時(shí)可采用遞歸調(diào)用.遞歸調(diào)用函數(shù)文件factor.m如下:functionf=factor(n)ifn<=1f=1;elsef=factor(n-1)*n;%遞歸調(diào)用求(n-1)!end局部函數(shù)

MATLAB7語(yǔ)言中把放置在目錄private下的函數(shù)稱(chēng)為局部函數(shù),這些函數(shù)只有private目錄的父目錄中的函數(shù)才可以調(diào)用,其他目錄下的函數(shù)不能調(diào)用.

局部函數(shù)與子函數(shù)所不同的是,局部函數(shù)可以被其父目錄下的所有函數(shù)所調(diào)用,而子函數(shù)則只能被其所在的M文件的主函數(shù)所調(diào)用.所以,局部函數(shù)在可用的范圍上大于子函數(shù);在函數(shù)編輯的結(jié)構(gòu)上,局部函數(shù)與一般的函數(shù)文件的編輯相同,而子函數(shù)只能在主函數(shù)文件中編輯.為防止程序調(diào)用出錯(cuò)!調(diào)用MATLAB工具箱的程序的自編程序必須放到默認(rèn)的work工作路徑當(dāng)中.

課件中的程序如果直接拷貝到MATLAB中,部分不能直接運(yùn)行,注意英文字符和漢語(yǔ)字符的區(qū)別!4.調(diào)試程序直接調(diào)試法利用調(diào)試工具采用命令行調(diào)試程序采用調(diào)試界面調(diào)試程序程序調(diào)試概述一般來(lái)說(shuō),應(yīng)用程序的錯(cuò)誤有兩類(lèi),一類(lèi)是語(yǔ)法錯(cuò)誤,另一類(lèi)是運(yùn)行時(shí)的錯(cuò)誤。語(yǔ)法錯(cuò)誤包括詞法或文法的錯(cuò)誤,例如函數(shù)名的拼寫(xiě)錯(cuò)、表達(dá)式書(shū)寫(xiě)錯(cuò)等。程序運(yùn)行時(shí)的錯(cuò)誤是指程序的運(yùn)行結(jié)果有錯(cuò)誤,這類(lèi)錯(cuò)誤也稱(chēng)為程序邏輯錯(cuò)誤。直接調(diào)試法MATLAB語(yǔ)言具有強(qiáng)大的運(yùn)算能力,指令系統(tǒng)簡(jiǎn)單,因此程序通常非常簡(jiǎn)潔。對(duì)于簡(jiǎn)單的程序可以采用直接調(diào)試的方法。在程序調(diào)試時(shí),程序運(yùn)行中變量的值為一個(gè)重要的線索。因此,查看變量值為程序調(diào)試的重要線索,由于在函數(shù)調(diào)用時(shí)只返回最后的輸出參數(shù),而不返回中間變量,因此,可以選擇下面的方法查看程序運(yùn)行中的變量值。(1)通過(guò)分析后,將可能出錯(cuò)的語(yǔ)句后面的分號(hào)(;)刪除,將結(jié)果顯示在命令窗口中,與預(yù)期值進(jìn)行比較;(2)利用函數(shù)disp顯示中間變量的值;(3)在程序中的適當(dāng)位置添加keyboard指令。當(dāng)MATLAB執(zhí)行至此處時(shí)將暫停,等待用戶(hù)反應(yīng)。當(dāng)程序運(yùn)行至此時(shí)將暫停,在命令窗口中顯示k>>提示符,用戶(hù)可以查看工作區(qū)中的變量,可以改變變量的值。輸入return指定返回程序,繼續(xù)運(yùn)行。(4)在調(diào)試一個(gè)單獨(dú)的函數(shù)時(shí),可以將函數(shù)改寫(xiě)為腳本文件,此時(shí)可以直接對(duì)輸入?yún)?shù)賦值,然后以腳本方式運(yùn)行該M文件,這樣可以保存中間變量,在運(yùn)行完成后,可以查看中間變量的值,對(duì)結(jié)果進(jìn)行分析,查找錯(cuò)誤所在。采用命令行調(diào)試程序函數(shù)功能dbstop設(shè)置斷點(diǎn)dbclear刪除斷點(diǎn)dbcont重新開(kāi)始dbdown恢復(fù)由dbup修改的變量值dbmex啟動(dòng)MEX文件調(diào)試dbstack列出調(diào)用關(guān)系dbstatus列出所有的斷點(diǎn)dbstep執(zhí)行一行或多行dbtype列出M文件并標(biāo)出每行dbup修改工作區(qū)中變量的值dbquit退出調(diào)試模式函數(shù)功能echo顯示執(zhí)行的腳本或函數(shù)代碼disp顯示指定變量的值或者其他信息sprintf,fprintf格式化輸出不同類(lèi)型的變量whos查看工作區(qū)中的變量size顯示數(shù)組維數(shù)keyboard中斷程序執(zhí)行,將控制權(quán)交給鍵盤(pán),允許鍵盤(pán)輸入return在keyboard中斷后繼續(xù)返回程序執(zhí)行warning顯示指定的警告消息error顯示指定的錯(cuò)誤消息lasterr返回最后一條錯(cuò)誤消息lasterror返回最后一條錯(cuò)誤消息及相關(guān)信息lastwarn返回最后一條警告消息文本編輯器中的Debug菜單提供了全部的調(diào)試選項(xiàng),另外,MATLAB主窗口中的Debug菜單提供了一些調(diào)試命令,方便調(diào)試時(shí)在命令窗口中查看運(yùn)行狀態(tài)。調(diào)試選項(xiàng)及其功能如表所示。選項(xiàng)功能對(duì)應(yīng)快捷鍵OpenM-fileswhenDebbuging選擇該選項(xiàng)則在調(diào)試打開(kāi)M文件無(wú)Step下一步F10StepIn進(jìn)入被調(diào)用函數(shù)內(nèi)部F11StepOut跳出當(dāng)前函數(shù)Shift+F11Continue執(zhí)行,直至下一斷點(diǎn)F5GountilCursor執(zhí)行至當(dāng)前光標(biāo)處無(wú)Set/ClearBreakpoint設(shè)置或刪除斷點(diǎn)F12Set/ModifyConditionalBreakpoint…設(shè)置或修改條件斷點(diǎn)無(wú)Enable/DisableBreakpoin

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論