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

下載本文檔

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

文檔簡介

1、第3章 MATLAB程序設(shè)計(jì) 3.1 M文件 3.2 數(shù)據(jù)的輸入輸出 3.3 選擇結(jié)構(gòu) 3.4 循環(huán)結(jié)構(gòu) 3.5 函數(shù)文件 3.6 全局變量和局部變量 目錄目錄3.1 M文件編程vM文件的功能和特點(diǎn)MATLAB是解釋性語言語法簡單調(diào)試容易人機(jī)交互性強(qiáng)開放性、可擴(kuò)展性強(qiáng)3.1.1 M文件的建立與編輯1.建立新的M文件(1)菜單操作:MATLAB命令窗口的File菜單 New菜單項(xiàng) M-file命令。(2)命令操作:在MATLAB命令窗口輸入命令edit。(3)命令按鈕操作:單擊MATLAB命令窗口工具欄上的“新建”命令按鈕。 2. 編輯已有的M文件 3.1.2 M文件的分類文件的分類分類:命令文

2、件分類:命令文件(Script File/腳本文件腳本文件)和函數(shù)文件和函數(shù)文件(Function File)。1。命令文件。命令文件有效指令的集合,以文件名直接調(diào)用運(yùn)行。有效指令的集合,以文件名直接調(diào)用運(yùn)行。若要一次執(zhí)行大量的若要一次執(zhí)行大量的MATLAB命令,可將這些命令存命令,可將這些命令存放於一個(gè)后綴為放於一個(gè)后綴為m的文件,并在的文件,并在 MATLAB提示號(hào)下鍵提示號(hào)下鍵入此文件名即可。入此文件名即可。 命令文件命令文件v對(duì)于一些比較簡單的問題 ,在指令窗中直接輸入指令計(jì)算.v對(duì)于復(fù)雜計(jì)算,采用命令文件最為合適.vMATLAB只是按文件所寫的指令執(zhí)行.vM命令文件的特點(diǎn)是:命令文件

3、的構(gòu)成比較簡單,只是一串按用戶意圖排列而成的(包括控制流向指令在內(nèi)的)MATLAB指令集合M文件中定義的變量為全局變量.命令文件運(yùn)行后 ,所產(chǎn)生的所有變量都駐留在 MATLAB基本工作空間(Base workspace)中。只要用戶不使用清除指令(clear), MATLAB指令窗不關(guān)閉,這些變量將一直保存在基本工作空間中 例3.1 建立一個(gè)命令文件將變量a,b的值互換,然后運(yùn)行該命令文件。 首先建立命令文件并以文件名exch.m存盤: clear; a=1:10; b=11,12,13,14;15,16,17,18; c=a;a=b;b=c; a b 然后在MATLAB的命令窗口中輸入exc

4、h,將會(huì)執(zhí)行該命令文件。目錄目錄函數(shù)文件函數(shù)文件v與命令文件不同與命令文件不同 ,函數(shù)文件猶如一個(gè),函數(shù)文件猶如一個(gè)“黑箱黑箱”,把一些,把一些數(shù)據(jù)送進(jìn)并經(jīng)加工處理,再把結(jié)果送出來數(shù)據(jù)送進(jìn)并經(jīng)加工處理,再把結(jié)果送出來.vMATLAB提供的函數(shù)指令大部分都是由函數(shù)文件定義的提供的函數(shù)指令大部分都是由函數(shù)文件定義的.用用M文件自定義函數(shù),開頭為文件自定義函數(shù),開頭為: function yname = fname(xname)yname: 因變量名,因變量名,fname: 函數(shù)名,函數(shù)名,xname:自變量:自變量名名. 文件名為文件名為fname,即與函數(shù)名相同,即與函數(shù)名相同. 例3.2 建立

5、一個(gè)函數(shù)文件將變量a,b的值互換,然后在命令窗口調(diào)用該函數(shù)文件。 首先建立函數(shù)文件fexch.m: function a,b=fexch(a,b) % exch c=a;a=b;b=c; 然后在MATLAB的命令窗口調(diào)用該函數(shù)文件: clear; x=1:10; y=11,12,13,14;15,16,17,18; x,y=fexch(x,y)目錄目錄由上例可以看出函數(shù)文件的一般格式為:function 輸出表函數(shù)名(輸入表)函數(shù)體 函數(shù)文件的第一行必須是以關(guān)鍵字function開始,表明該文件是函數(shù)文件輸入表是以逗號(hào)相分隔的形參輸出表是函數(shù)的返回值如果返回值只有一個(gè)方括號(hào)可以省略;如果返回值

6、不止一個(gè),輸出表中的各個(gè)變量要以逗號(hào)隔開標(biāo)準(zhǔn)的函數(shù)文件基本結(jié)構(gòu)。標(biāo)準(zhǔn)的函數(shù)文件基本結(jié)構(gòu)。 (1)函數(shù)定義行(關(guān)鍵字)函數(shù)定義行(關(guān)鍵字function)functionout1,out2,. = filename(in1,in2,.)輸入和輸出(返回)的輸入和輸出(返回)的參數(shù)個(gè)數(shù)參數(shù)個(gè)數(shù)分別由分別由nargin和和nargout兩兩個(gè)個(gè)MATLAB保留的變量來給出。保留的變量來給出。(2)第一行幫助行,即)第一行幫助行,即H1行以(行以(%)開頭,作為)開頭,作為lookfor指令搜索的行,可以使程式易於了解與管理。特別要說明指令搜索的行,可以使程式易於了解與管理。特別要說明的是,第一注解行

7、通常用來簡短說明此的是,第一注解行通常用來簡短說明此M檔案的功能,以檔案的功能,以便便lookfor能以關(guān)鍵字比對(duì)的方式來找出此能以關(guān)鍵字比對(duì)的方式來找出此M檔案。檔案。 舉例來說舉例來說,fexch.m的第一注解行包含的第一注解行包含exch這個(gè)字,因此這個(gè)字,因此如果鍵入如果鍵入lookfor exch,MATLAB即可列出所有在第一注即可列出所有在第一注解行包含解行包含exch的的M檔案,因而檔案,因而fexch.m也會(huì)被列名在內(nèi)。也會(huì)被列名在內(nèi)。 (3)函數(shù)體說明及有關(guān)注解)函數(shù)體說明及有關(guān)注解,以(以(%)開頭,)開頭,用以說明函數(shù)的作用及有關(guān)內(nèi)容用以說明函數(shù)的作用及有關(guān)內(nèi)容(4)函

8、數(shù)體語句)函數(shù)體語句函數(shù)體內(nèi)使用的除返回和輸入變量這些在函數(shù)體內(nèi)使用的除返回和輸入變量這些在function語句中直接引用的變量以外的所語句中直接引用的變量以外的所有變量都是局部變量,即在該函數(shù)返回之有變量都是局部變量,即在該函數(shù)返回之后,這些變量會(huì)自動(dòng)在后,這些變量會(huì)自動(dòng)在MATLAB的工作空的工作空間中清除掉。如果希望這些中間變量成為間中清除掉。如果希望這些中間變量成為在整個(gè)程序中都起作用的變量,則可以將在整個(gè)程序中都起作用的變量,則可以將它們設(shè)置為全局變量它們設(shè)置為全局變量例3.3 建立一個(gè)自變量為m, n的函數(shù),用其構(gòu)造mn矩陣,其元素隨機(jī)取均勻分布在09中的整數(shù): function

9、a=randint(m,n) a=floor(10*rand(m,n);以上兩句存為M文件randint.m. 用法: A=randint(2,3) %z則A為23矩陣,其元素為隨機(jī)取自09中的整數(shù). 函數(shù)M文件中的變量為局部變量,要想在Command Window 或其他M文件中可調(diào)用,必須在這些地方把此變量說明為global: 例如,global a; 注意,M文件必須存放在MATLAB的搜索路徑中才可被調(diào)用. 3.2 數(shù)據(jù)的輸入輸出3.2.1 input函數(shù) 調(diào)用格式為: A=input(提示信息,選項(xiàng)); 其中,提示信息為一個(gè)字符串,用于提示用戶輸入什么樣的數(shù)據(jù)。 如果在input函數(shù)

10、調(diào)用時(shí)采用s選項(xiàng),則允許用戶輸入一個(gè)字符串。例如,想輸入一個(gè)人的姓名,可采用命令: xm=input(Whats your name?,s) Whats your name?xiaoweixm = xiaowei目錄目錄 3.2.2 disp函數(shù) 調(diào)用格式為 disp(輸出項(xiàng)) 其中輸出項(xiàng)既可以為字符串,也可以為矩陣。 注意:用disp函數(shù)顯示矩陣時(shí)將不顯示矩陣的名字,而且其格式更緊密,且不留任何沒有意義的空行。目錄目錄 例3.4 求一元二次方程ax2 +bx+c=0的根。 程序如下: a=input(a=?); b=input(b=?); c=input(c=?); d=b*b-4*a*c;

11、 x=(-b+sqrt(d)/(2*a),(-b-sqrt(d)/(2*a); disp(x1=,num2str(x(1),x2=,num2str(x(2)目錄目錄disp(x) 顯示顯示x的內(nèi)容,與的內(nèi)容,與x 的區(qū)別是:前者僅顯示的區(qū)別是:前者僅顯示x的內(nèi)容,后者多個(gè)的內(nèi)容,后者多個(gè)x=.a=? 3b=? 4c=? 9x1=-0.66667+1.5986i,x2=-0.66667-1.5986i 3.2.3 pause函數(shù) 其調(diào)用格式為: pause(延遲秒數(shù)) 如果省略延遲時(shí)間,直接使用pause,則將暫停程序,直到用戶按任一鍵后程序繼續(xù)執(zhí)行。 若要強(qiáng)行中止程序的運(yùn)行可使用Ctrl+C命

12、令。目錄目錄MATLAB流程控制流程控制v循環(huán)語句循環(huán)語句 for, whilev條件轉(zhuǎn)移條件轉(zhuǎn)移 if end, if elseif else endv開關(guān)語句開關(guān)語句 switch casev注釋語句注釋語句 %v中斷語句中斷語句 breakv暫停語句暫停語句 pausev回顯語句回顯語句 echo on/off 3.3 選擇結(jié)構(gòu) 3.3.1 if語句 在在MATLAB中,中,if語句有語句有3種格式。種格式。 1.單分支單分支if語句語句 語句格式為:語句格式為: if 條件 語句組 end 當(dāng)條件成立時(shí),則執(zhí)行語句組,執(zhí)行完之當(dāng)條件成立時(shí),則執(zhí)行語句組,執(zhí)行完之后繼續(xù)執(zhí)行后繼續(xù)執(zhí)行if

13、語句的后繼語句,若條件不成立,語句的后繼語句,若條件不成立,則直接執(zhí)行則直接執(zhí)行if語句的后繼語句。語句的后繼語句。目錄目錄 2.雙分支if語句 語句格式為: if 條件 語句組1 else 語句組2 end 當(dāng)條件成立時(shí),執(zhí)行語句組1,否則執(zhí)行語句組2,語句組1或語句組2執(zhí)行后,再執(zhí)行if語句的后繼語句。目錄目錄 例3.4計(jì)算分段函數(shù)值目錄目錄2cos(1)1,10,10 xxxyx xx x程序如下: x=input(請輸入請輸入x的值的值:); if x=10 y=cos(x+1)+sqrt(x*x+1); else y=x*sqrt(x+sqrt(x); end y請輸入請輸入x的值的

14、值:y = 47.189312 3.多分支if語句語句格式為:if 條件1 語句組1 elseif 條件2 語句組2 elseif 條件m 語句組m else 語句組m+1end目錄目錄 例3.5 輸入一個(gè)字符,若為大寫字母,則輸出其后繼字符,若為小寫字母,則輸出其前導(dǎo)字符,若為數(shù)字字符則輸出其對(duì)應(yīng)的數(shù)值,若為其他字符則原樣輸出。目錄目錄 c=input(請輸入一個(gè)字符,s); if c=A & c=a& c=0& c *Inner matrix dimensions must agree. 3.4 循環(huán)結(jié)構(gòu) 3.4.1 for語句 基本格式基本格式for for 循環(huán)

15、變量起始值:步長:終止值循環(huán)變量起始值:步長:終止值 循環(huán)體循環(huán)體 endend步長缺省值為步長缺省值為1 1,可以在正實(shí)數(shù)或負(fù)實(shí)數(shù)范圍內(nèi)任意指定。,可以在正實(shí)數(shù)或負(fù)實(shí)數(shù)范圍內(nèi)任意指定。對(duì)于正數(shù),循環(huán)變量的值大于終止值時(shí),循環(huán)結(jié)束;對(duì)對(duì)于正數(shù),循環(huán)變量的值大于終止值時(shí),循環(huán)結(jié)束;對(duì)于負(fù)數(shù),循環(huán)變量的值小于終止值時(shí),循環(huán)結(jié)束。循環(huán)于負(fù)數(shù),循環(huán)變量的值小于終止值時(shí),循環(huán)結(jié)束。循環(huán)結(jié)構(gòu)可以嵌套使用。結(jié)構(gòu)可以嵌套使用。目錄目錄 for i=1:5for i=1:5 for j=1:5 for j=1:5 a(i,j)=1/(i+j-1); a(i,j)=1/(i+j-1); end endendend

16、a=a= 1.0000 0.5000 0.3333 0.2500 0.2000 1.0000 0.5000 0.3333 0.2500 0.2000 0.5000 0.3333 0.2500 0.2000 0.16670.5000 0.3333 0.2500 0.2000 0.1667 0.3333 0.2500 0.2000 0.1667 0.1429 0.3333 0.2500 0.2000 0.1667 0.1429 0.2500 0.2000 0.1667 0.1429 0.1250 0.2500 0.2000 0.1667 0.1429 0.1250 0.2000 0.1667 0.

17、1429 0.1250 0.1111 0.2000 0.1667 0.1429 0.1250 0.1111 例例3.8 已知求已知求y的表達(dá)式,的表達(dá)式, 當(dāng)當(dāng)n=100時(shí),求時(shí),求y的值。的值。 目錄目錄在實(shí)際在實(shí)際MATLAB編程中,為提高程序的執(zhí)行速度,常編程中,為提高程序的執(zhí)行速度,常用向量運(yùn)算來代替循環(huán)操作:用向量運(yùn)算來代替循環(huán)操作: n=100; i=1:n; f=1./i.2; y=sum(f)11/ /niyi i程序如下:程序如下: y=0;n=100; for i=1:n y=y+1/i/i; end yy = 2047/1252 例3.9 求定積分 。程序如下: a=0;

18、b=3*pi;n=1000; h=(b-a)/n; x=a:h:b; f=exp(-0.5*x).*sin(x+pi/6); for i=1:n s(i)= (f(i)+f(i+1)*h/2; end s=sum(s) 目錄目錄1320()sin()6xexdx 事實(shí)上,MATLAB提供了有關(guān)數(shù)值積分的標(biāo)準(zhǔn)函數(shù),實(shí)際應(yīng)用中可直接調(diào)用這些函數(shù)求數(shù)值積分。s = 754/837 for語句更一般的格式:語句更一般的格式:for 循環(huán)變量=矩陣表達(dá)式 循環(huán)體語句 end 執(zhí)行過程是依次將矩陣的各列元素賦給循環(huán)變量,然后執(zhí)行循環(huán)體語句,直至各列元素處理完畢。實(shí)際上,“表達(dá)式1:表達(dá)式2:表達(dá)式3”是一

19、個(gè)僅為一行的矩陣(行向量),因而列向量是單個(gè)數(shù)據(jù)。目錄目錄 例3.10 已知5個(gè)學(xué)生4門功課的成績,求每名學(xué)生的總成績。程序如下:s=0;a=65,76,56,78;98,83,74,85;76,67,78,79;98,58,42,73;67,89,76,87for k=a s=s+k;enddisp(s);目錄目錄a = 65 76 56 78 98 83 74 85 76 67 78 79 98 58 42 73 67 89 76 87 275 340 300 271 319 3.4.2 while語句 while語句一般用于不能事先確定循環(huán)次數(shù)的情況 while語句的一般格式為: whi

20、le (條件) 循環(huán)體語句 end 其執(zhí)行過程為:若條件成立,則執(zhí)行循環(huán)體語句,執(zhí)行后再判斷條件是否成立,如果不成立則跳出循環(huán)(如圖3.5所示)。目錄目錄While循環(huán)和循環(huán)和for循環(huán)的區(qū)別在于,循環(huán)的區(qū)別在于,while循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)的循環(huán)體被執(zhí)行的次數(shù)不是確定的,而的循環(huán)體被執(zhí)行的次數(shù)不是確定的,而for結(jié)構(gòu)中循結(jié)構(gòu)中循環(huán)體的執(zhí)行次數(shù)是確定的。環(huán)體的執(zhí)行次數(shù)是確定的。例 用循環(huán)求解例 用循環(huán)求解 最小的 m用用while循環(huán)語句編寫一個(gè)計(jì)算循環(huán)語句編寫一個(gè)計(jì)算1000以內(nèi)以內(nèi)的的Fibonacci數(shù):數(shù): f=1 1; i=1; while f(i)+f(i+1)1000 f(i+2)

21、=f(i)+f(i+1); i=i+1; end f= 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 例例3.11 產(chǎn)生一個(gè)長度為的調(diào)和數(shù)列。產(chǎn)生一個(gè)長度為的調(diào)和數(shù)列。 程序如下:程序如下: X=zeros(1,6); i=1; while i=6 X(i)=1/i; i=i+1; end format rat %使用分?jǐn)?shù)表示數(shù)值使用分?jǐn)?shù)表示數(shù)值 disp(X)目錄目錄Columns 1 through 5 1 1/2 1/3 1/4 1/5 Column 6 1/6 與循環(huán)結(jié)構(gòu)相關(guān)的還有一個(gè)break語句,當(dāng)在循環(huán)體內(nèi)執(zhí)行到該語句時(shí),程序?qū)⑻?/p>

22、循環(huán)。該語句一般與if語句配合使用。 例3.12 用while語句實(shí)現(xiàn)例3.8。 程序如下: y=0; i=1; while 1 f=1/i/i; y=y+f; if i=100 break; end i=i+1; end y目錄目錄 3.4.3 循環(huán)的嵌套v如果一個(gè)循環(huán)結(jié)構(gòu)的循環(huán)體又包括一個(gè)循環(huán)結(jié)構(gòu),就稱為循環(huán)的嵌套,或稱為多重循環(huán)結(jié)構(gòu)??梢园凑涨短讓訑?shù),分別叫做二重循環(huán)、三重循環(huán)等。處于內(nèi)部的循環(huán)叫作內(nèi)循環(huán),處于外部的循環(huán)叫作外循環(huán)。v在設(shè)計(jì)多重循環(huán)時(shí),要特別注意內(nèi)、外循環(huán)之間的關(guān)系,以及各語句放置的位置,不要搞錯(cuò)。目錄目錄 例3.13 用篩選法求某自然數(shù)范圍內(nèi)的全部素?cái)?shù)。 程序如下: m

23、=input(m=); p=2:m; for i=2:sqrt(m) n=find(rem(p,i)=0&p=i); p(n)=; end p目錄目錄m=100p = Columns 1 through 5 2 3 5 7 11 Columns 6 through 10 13 17 19 23 29 Columns 11 through 15 31 37 41 43 47 Columns 16 through 20 53 59 61 67 71 Columns 21 through 25 73 79 83 89 97 3.5 函數(shù)文件 3.5.1 函數(shù)文件的基本結(jié)構(gòu) 函數(shù)文件由func

24、tion語句引導(dǎo),其基本結(jié)構(gòu)為: function 輸出形參表=函數(shù)名(輸入形參表) 注釋說明部分 函數(shù)體語句目錄目錄 說明:(1)關(guān)于函數(shù)文件名: 函數(shù)文件名與函數(shù)名也可以不相同。當(dāng)兩者不同時(shí),MATLAB將忽略函數(shù)名而確認(rèn)函數(shù)文件名,因此調(diào)用時(shí)使用函數(shù)文件名。(2)關(guān)于注釋說明部分。注釋說明包括三部分內(nèi)容:緊隨函數(shù)文件引導(dǎo)行之后以%開頭的第一注釋行。第一注釋行及之后連續(xù)的注釋行。與在線幫助文本相隔一空行的注釋行。 (3)關(guān)于return語句。執(zhí)行到該語句就結(jié)束函數(shù)的執(zhí)行,程序流程轉(zhuǎn)至調(diào)用該函數(shù)的位置。通常,在函數(shù)文件中也可不使用return語句,這時(shí)在被調(diào)函數(shù)執(zhí)行完成后自動(dòng)返回。目錄目錄

25、例3.14 編寫函數(shù)文件求半徑為r的圓的面積和周長。 函數(shù)文件如下: function s,p=fcircle(r) %CIRCLE calculate the area and perimeter of a circle of radii r %r 圓半徑圓半徑 %s 圓面積圓面積 %p 圓周長圓周長 %2001年年7月月30日編日編 s=pi*r*r; p=2*pi*r; 將以上函數(shù)文件以文件名fcircle.m存入c:matlabr11work下,然后在MATLAB命令窗口調(diào)用該函數(shù): s,p=fcircle(10)目錄目錄s = 13823/44 p = 7100/113 3.5.2

26、函數(shù)調(diào)用 函數(shù)調(diào)用的一般格式是: 輸出實(shí)參表=函數(shù)名(輸入實(shí)參表)例3.15 利用函數(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(Please input x=:); y=input(Please input y=:); rho,the=tran(x,y); rho the目錄目錄 例3.16 利用函數(shù)的遞歸調(diào)用,求n!。 遞歸調(diào)用函數(shù)文件factor.m: functi

27、on f=factor(n) if n main2Please input n=:5s = 153 3.5.3 函數(shù)所傳遞參數(shù)的可調(diào)性 在調(diào)用函數(shù)時(shí),MATLAB用兩個(gè)永久變量nargin和nargout分別記錄調(diào)用該函數(shù)時(shí)的輸入實(shí)參和輸出實(shí)參的個(gè)數(shù)。只要在函數(shù)文件中包含這兩個(gè)變量,就可以準(zhǔn)確地知道該函數(shù)文件被調(diào)用時(shí)的輸入輸出參數(shù)個(gè)數(shù),從而決定函數(shù)如何進(jìn)行處理。目錄目錄 例3.17 nargin用法示例。 函數(shù)文件examp.m: function fout=examp(a,b,c) if nargin=1 fout=a; elseif nargin=2 fout=a+b; elseif na

28、rgin=3 fout=(a*b*c)/2; end 命令文件mydemo.m: x=1:3;y=1;2;3; examp(x) examp(x,y) examp(x,y,3)目錄目錄 mydemoans = 1 2 3ans = 2 4 6ans = 21 3.6 全局變量和局部變量 全局變量用命令global定義。函數(shù)文件的內(nèi)部變量是局部的,與其他函數(shù)文件及MATLAB工作空間相互隔離。 例3.18 全局變量應(yīng)用示例。 先建立函數(shù)文件wadd.m,該函數(shù)將輸入的參數(shù)加權(quán)相加。 function f=wadd(x,y) global ALPHA BETA f=ALPHA*x+BETA*y;

29、在命令窗口中輸入: global ALPHA BETA ALPHA=1; BETA=2; s=wadd(1,2)目錄目錄s = 5 3.7 類和對(duì)象 (以下內(nèi)容不講) 類的概念是結(jié)構(gòu)體的拓展,在類中,不但可以包含變量成員,還可以包含與這些變量相關(guān)聯(lián)的函數(shù)或運(yùn)算。對(duì)象是類的一個(gè)具體實(shí)例。類和對(duì)象的概念是面向?qū)ο蟪绦蛟O(shè)計(jì)(Object-oriented Programming)的基礎(chǔ)。采用面向?qū)ο蠹夹g(shù)可以把復(fù)雜的操作過程加以隱藏,而外部呈現(xiàn)為人們所習(xí)慣的處理形式。 例3.19 建立一個(gè)整數(shù)類integer,該類含有一個(gè)數(shù)據(jù)成員n,代表一個(gè)3 位整數(shù)。還具有顯示整數(shù)各位數(shù)字之和、各位數(shù)字平方和、各位

30、數(shù)字立方和等功能。 目錄目錄3.8 文件操作3.8.1 文件的打開與關(guān)閉 1. 打開文件 fopen函數(shù)的調(diào)用格式為: Fid= fopen(文件名,打開方式) 2. 關(guān)閉文件 調(diào)用格式為: Sta=fclose(Fid)目錄目錄 3.8.2 二進(jìn)制文件讀寫操作 1. 讀二進(jìn)制文件 fread 函數(shù)可以讀取二進(jìn)制文件的數(shù)據(jù),并將數(shù)據(jù)存入矩陣。其調(diào)用格式為: A,COUNT=fread(Fid,size, precision) 2. 寫二進(jìn)制文件 fwrite 函數(shù)按照指定的數(shù)據(jù)精度將矩陣中的元素寫入到文件中。其調(diào)用格式為: COUNT=fwrite (Fid, A, precision) 目錄目錄 3.8.3 文本文件讀寫操作 1. 讀文本文件 fscanf 函數(shù)可以讀取文本文件的內(nèi)容,并按指定格式存入矩陣。其調(diào)用格式為: A,COUNT= fscanf (Fid, format, size) 2. 寫文本文件 fprintf 函數(shù)可以將數(shù)據(jù)按指定格式寫入到文本文件中。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論