ImageVerifierCode 换一换
格式:PPT , 页数:24 ,大小:115.50KB ,
资源ID:972704      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-972704.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(MATLAB程式设计与应用结构阵列.PPT)为本站会员(天***)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

MATLAB程式设计与应用结构阵列.PPT

1、MATLAB 程式設計與應用結構陣列張智星jangcs.nthu.edu.twhttp:/www.cs.nthu.edu.tw/jang清大資工系 多媒體檢索實驗室MATLAB 程式設計入門篇:結構陣列13-1結構陣列的建立n 每一個結構陣列( Structure Array) 可以包含很多個元素,每一個元素可以看成是一筆資料。因此每個元素可以包含數個欄位( Fields), 而每個欄位可包含各個不同型態的資料。例如一個包含學生個人資料的結構陣列,可能含有的欄位是 name( 學生姓名)、 id( 學號)、 scores( 小考成績)等。要建立此種結構,可在指令列直接輸入個欄位的值 。MATL

2、AB 程式設計入門篇:結構陣列結構陣列之範例一n 範例 13-1 : struct01.mclear student % 清除 student 變數student.name = 洪鵬翔 ; % 加入 name 欄位student.id = mr871912; % 加入 id 欄位student.scores = 58, 75, 62; % 加入 scores 欄位student % 秀出結果student = name: 洪鵬翔 id: mr871912scores: 58,75,62n 此時 student 即代表一個結構陣列的第一個元素,或是第一筆資料。 MATLAB 程式設計入門篇:結構

3、陣列結構陣列之範例二n 範例 13-2 : struct02.mclear student % 清除 student 變數student.name = 洪鵬翔 ; % 加入 name 欄位student.id = mr871912; % 加入 id 欄位student.scores = 58, 75, 62; % 加入 scores 欄位% 以下是新加入的第二筆資料student(2).name = 邱中人 ;student(2).id = mr872510;student(2).scores = 25, 36, 92;student % 秀出結果student = 1x2 struct ar

4、ray with fields:NameIdscoresdent = 1x2 struct array with fields:NameIdscoresMATLAB 程式設計入門篇:結構陣列結構陣列之範例二n 此時 student 即代表一個 12 的結構陣列。由於此結構陣列已漸趨複雜, MATLAB 並不將所有欄位值印出。欲顯示某元素的特定欄位值,可輸入明確的敘述,例如 student(2).scores 等。n 另一個建立結構陣列的方法,則是使用 struct 指令,其格式如下:structureArray = struct(field1, value1, field2, value2,.

5、)n 其中 field1、 field2、 是欄位名稱, value1、 value2、 則是欄位所包含的資料。如果 value1、 value2、 為異質陣列( Cell Arrays, 詳見第上一章),則 MATLAB 為依序將異質陣列的每個元素設定為每一個結構中相對應的欄位值,如以下範例 13-3:MATLAB 程式設計入門篇:結構陣列結構陣列之範例三n 範例 13-3 : struct03.mstudent = struct(name, 張庭碩 , 張庭安 , scores, 50 60, 60 70);student(1) % 顯示 student(1)student(2) % 顯示

6、 student(2)ans = name: 張庭碩 scores: 50 60ans = name: 張庭安 scores: 60 70n 在上述使用法中, 張庭碩 , 張庭安 和 50 60, 60 70 都是異質陣列,因此他們的每個元素會被依次設定到每個結構之中。但是如果其中有一個異值陣列的長度是 1,那麼 MATLAB 會進行純量展開( Scalar Expansion) 來自動補足,如以下範例 13-4:MATLAB 程式設計入門篇:結構陣列結構陣列之範例四n 範例 13-4 : struct04.mstudent = struct(name, 張庭安 ,scores, 50 60,

7、 90 100);student(1) % 顯示 student(1)student(2) % 顯示 student(2)ans = name: 張庭安 scores: 50 60ans = name: 張庭安 scores: 90 100n 在上述範例中,張庭安可視為異質陣列的一個元素,因此在設定至 student 結構陣列時 , MATLAB 會進行純量展開,將張庭安分別設定到 student 的兩個元素的 name 欄位值。MATLAB 程式設計入門篇:結構陣列結構陣列之範例五n 結構陣列可以是巢狀式( Nested) 的,也就是說,結構陣列的欄位可是另一個結構陣列,我們可以藉此產生複雜

8、的資料結構n 範例 13-5 : struct05.mstudent = struct(name, 張庭碩 , 張庭安 , scores, 50 60, 60 70);student(2).course(1).title = Web Programming;student(2).course(1).credits = 2;student(2).course(2).title = Numerical Method;student(2).course(2).credits = 3;student(2).courseans = 1x2 struct array with fields:titlecr

9、editsMATLAB 程式設計入門篇:結構陣列 13-2 取用及改變結構陣列的資料Student結構陣列Student(1) Student(2) Student(3).name=banny.scores=85,80,92,78.name=joey.scores=80,85,90,88.name=batty.scores=88,82,90,80n 範例 13-6 : buildStruct01.m clear student % 清除 student 變數student(1) = struct(name, Banny, scores, 85,80,92,78);student(2) = st

10、ruct(name, Joey, scores, 80,85,90,88);student(3) = struct(name, Betty, scores, 88,82,90,80);n 上述的 student 結構陣列,可圖示如下:MATLAB 程式設計入門篇:結構陣列Struct2cell指令n 欲取用結構陣列中所有元素內所有欄位的資料,可用 struct2cell 指令,例如: values = struct2cell(student)values(:,:,1) = Banny1x4 doublevalues(:,:,2) = Joey1x4 doublevalues(:,:,3) = Betty1x4 doublen 請注意,傳回的 values 是一個異質陣列。一般而言,若輸入 struct2cell 指令的結構變數維度為 mn, 且包含 p 個欄位,則傳回異質陣列的維度為 pmn。 ( 在上例中, p = 2, m = 1, n = 3。)

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。