matlab使用單元數(shù)組和結(jié)構(gòu)數(shù)組

matlab使用單元數(shù)組和結(jié)構(gòu)數(shù)組

ID:12686959

大?。?5.50 KB

頁(yè)數(shù):9頁(yè)

時(shí)間:2018-07-18

matlab使用單元數(shù)組和結(jié)構(gòu)數(shù)組_第1頁(yè)
matlab使用單元數(shù)組和結(jié)構(gòu)數(shù)組_第2頁(yè)
matlab使用單元數(shù)組和結(jié)構(gòu)數(shù)組_第3頁(yè)
matlab使用單元數(shù)組和結(jié)構(gòu)數(shù)組_第4頁(yè)
matlab使用單元數(shù)組和結(jié)構(gòu)數(shù)組_第5頁(yè)
資源描述:

《matlab使用單元數(shù)組和結(jié)構(gòu)數(shù)組》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。

1、Matlab使用單元數(shù)組(cellarray)和結(jié)構(gòu)數(shù)組(structarray)要在MALTAB中實(shí)現(xiàn)比較復(fù)雜的編程,就不能不用單元數(shù)組(cellarray)和結(jié)構(gòu)數(shù)組(structarray)。而且在Matlab中實(shí)現(xiàn)struct比C中更為方便。一.單元數(shù)組單元數(shù)組中的每一個(gè)元素稱為單元(cell).單元可以包含任何類型的matlab數(shù)據(jù),這些數(shù)據(jù)類型包括數(shù)值數(shù)組,字符,符號(hào)對(duì)象,甚至其他的單元數(shù)組和結(jié)構(gòu)體.不同的單元可以包含不同的數(shù)據(jù).1.1單元數(shù)組創(chuàng)建與顯示:1、直接賦值法:按單元索引法和按內(nèi)容索引法。(其實(shí)也就是將花括號(hào)放在等式的右邊或是左邊的區(qū)別)。注意:“按單元索引法”和“按

2、內(nèi)容索引法”是完全等效的,可以互換使用。通過(guò)下面實(shí)例,我們看到:花括號(hào){}用于訪問(wèn)單元的值,而括號(hào)()用于標(biāo)識(shí)單元(即:不用于訪問(wèn)單元的值)。具體理解{}和()區(qū)別可以在下面代碼最后分別輸入A{2,2}和A(2,2)。就會(huì)發(fā)現(xiàn)“按內(nèi)容索引法{}”能顯示完整的單元內(nèi)容,而“按單元索引法()”有時(shí)無(wú)法顯示完整的單元內(nèi)容。>>A(1,1)={[123;456;789]};?????????%按單元索引法>>A(1,2)={2+3i};>>A(2,1)={'Acharacter'};>>A(2,2)={12:-2:0};>>A?????????????????????????%要想詳細(xì)顯示A中的內(nèi)

3、容,可用指令:celldisp(A)A=????[3x3double]???[2.0000+3.0000i]???'Acharacter'?????????[1x7double]>>B{1,1}=[123;456;789];???????%按內(nèi)容索引法。>>B{1,2}=2+3i;>>B{2,1}='Acharacter';>>B{2,2}=12:-2:0;>>BB=????[3x3double]???[2.0000+3.0000i]???'Acharacter'?????????[1x7double]2、利用cell函數(shù)法:即首先用cell函數(shù)生成一個(gè)空的單元數(shù)組,然后再向其中添加所需的

4、數(shù)據(jù)。下面的代碼生成一個(gè)2X3的空單元數(shù)組:>>C=cell(2,3)C=????[]????[]????[]????[]????[]????[]利用cell生成空單元數(shù)組后,可以采用“按單元索引法”和“按內(nèi)容索引法”對(duì)其進(jìn)行賦值。在賦值時(shí),用戶一定要注意{}和()的用法。>>C(1,1)={'Thisdoeswork'}C=???'Thisdoeswork'????[]????[]?????????????????[]????[]????[]>>C{2,3}='Thiswork'C=???'Thisdoeswork'????[]????????????[]????????????????

5、?[]????[]???'Thiswork'(1)利用cell指令創(chuàng)建單元數(shù)組C=cell(2);%預(yù)設(shè)空單元數(shù)組C(:,1)={char('Another','textstring');10:-1:1}%對(duì)第一列單元賦值C=[2x11char][][1x10double][](2)單元數(shù)組的“列”擴(kuò)充和“行”擴(kuò)充AC=[AC]%空格(或逗號(hào))利用來(lái)分隔列A_C=[A;C]%分號(hào)利用來(lái)分隔“行”AC=[2x10char][3x3double][2x11char][][1.0000+2.0000i][1x1sym][1x10double][]A_C=[2x10char][3x3double]

6、[1.0000+2.0000i][1x1sym][2x11char][][1x10double][]【例】cellplot能用圖形形象化地表示單元數(shù)組的內(nèi)容。(A_C取自上例)cellplot(A_C,'legend')單元數(shù)組的收縮A_C(3,:)=[]%刪除第3行,使A_C成為的單元數(shù)組A_C=[2x10char][3x3double][1.0000+2.0000i][1x1sym][1x10double][]把A_C重組成單元數(shù)組R_A_CR_A_C=reshape(A_C,2,3)R_A_C=[2x10char][1x10double][1x1sym][1.0000+2.0000i

7、][3x3double][]1.2單元數(shù)組內(nèi)容的調(diào)取取一個(gè)單元f1=R_A_C(1,3)%使用園括號(hào)尋訪得到的是單元,而不僅是內(nèi)容。class(f1)f1=[1x1sym]ans=cell取一個(gè)單元的內(nèi)容f2=R_A_C{1,3}%用花括號(hào)尋訪取得內(nèi)容class(f2)f2=sin(-3*t)*exp(-t)ans=sym取單元內(nèi)的子數(shù)組f3=R_A_C{1,1}(:,[1256])%注意三種括號(hào)的不同用途%取第1行第1

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。