收藏 分享(赏)

数据阵列类型与结构.ppt

上传人:gnk289057 文档编号:10012581 上传时间:2019-09-28 格式:PPT 页数:19 大小:88.50KB
下载 相关 举报
数据阵列类型与结构.ppt_第1页
第1页 / 共19页
数据阵列类型与结构.ppt_第2页
第2页 / 共19页
数据阵列类型与结构.ppt_第3页
第3页 / 共19页
数据阵列类型与结构.ppt_第4页
第4页 / 共19页
数据阵列类型与结构.ppt_第5页
第5页 / 共19页
点击查看更多>>
资源描述

1、数据阵列类型与结构,1 多维阵列 2 结构阵列 3 单元阵列,主要内容,1 多维阵列,从MATLAB 5.0版本开始,支持多维阵列。多维阵列是二维矩阵的推广,它可用来表示更复杂的数据。 一、多维阵列的建立 直接利用下标建立; 利用MATLAB函数建立; 利用cat函数建立; 用户自己编写M文件产生。,1 多维阵列,例如: a=5 4 3;0 2 1;8 2 -7;a(:,:,2)=0 1 0;2 1 3;9 9 -8 a(:,:,1) =5 4 30 2 18 2 -7 a(:,:,2) =0 1 02 1 39 9 -8,whos Name Size Bytes Classa 3x3x2 1

2、44 double arrayGrand total is 18 elements using 144 bytes,1 多维阵列(续),如果再输入 a(:,:,3)=6; a(:,:,3) ans=6 6 66 6 66 6 6,R=randn(5,4,3); Z=zeros(100,5,2); Y=ones(155,7,8); X=sin(R);,1 多维阵列(续),whosName Size Bytes ClassR 5x4x3 480 double arrayX 5x4x3 480 double arrayY 155x7x8 69440 double arrayZ 100x5x2 800

3、0 double arraya 3x3x3 216 double array Grand total is 9827 elements using 78616 bytes,a=2 8;0 5; b=1 8;2 4; c=cat(3,a,b); d=cat(4,a,b); size(d) ans =2 2 1 2,whosName Size Bytes Classa 2x2 32 double arrayb 2x2 32 double arrayc 2x2x2 64 double arrayd 4-D 64 double arrayGrand total is 24 elements using

4、 192 bytes,2 结构阵列,结构阵列由多个域构成,每个域可存放各种类型的数据,如数值、字符串。 一、建立结构阵列 直接使用赋值语句; 利用struct函数。 例如:p.name=John Doe; p.name=Wang Jun; p.billing=127.00; p.test=79 75 73;180 178 177.5; 220 210 205;,p p = name: Wang Junbilling: 127test: 3x3 double size(p) ans =1 1,2 结构阵列(续),再输入第二个人的信息: p(2).name=Li Ming; p(2).billin

5、g=28.5; p(2).test=68 70 68;118 117 119;172 170 169; p p = 1x2 struct array with fields:namebillingtest,这样可以建立结构阵列。N=fieldnames(p)可得到结构p包含的域名。,2 结构阵列(续),我们还可以利用struct函数直接建立结构。例如对以上示例,可输入 n=Wang Jun,Li Ming; b=127 28.5; t1=79 75 73;180 178 177.5; 220 210 205; t2=68 70 68;118 117 119;172 170 169; q=str

6、uct(name,n,billing,b,test,t1,t2);,2 结构阵列(续),q q = 1x2 struct array with fields:namebillingtest 这时得到的结构q与前例的结构p一样。,2 结构阵列(续),二、结构数据的使用 n1=p(1).name n1 = Wang Jun b1=p(1).billing b1 =127 disp(The cost of ,n1, in hospital is ,num2str(b1) The cost of Wang Jun in hospital is 127,2 结构阵列(续),disp(The cost o

7、f ,q(2).name, in hospital is , num2str(q(2).billing) The cost of Li Ming in hospital is 28.5 second=p(2) second = name: Li Mingbilling: 28.5000test: 3x3 double,2 结构阵列(续),三、结构阵列应用于函数和操作符 mean(p(2).test) ans =119.3333 119.0000 118.6667 total=sum(p.billing) total =155.5000,3 单元阵列,单元阵列是一种更加复杂的结构, 它可以包含多

8、维阵列、结构阵列、字符串等。例如 A(1,1)=1 4 3;0 5 8;7 2 9; A(1,2)=Anne Smith; A(2,1)=3+7i; A(2,2)=-pi:pi/10:pi;,A A = 3x3 double Anne Smith 3.0000+ 7.0000i 1x21 double,3 单元阵列,用图形表示: cellplot(A),3 单元阵列(续),访问单元阵列元素时,可直接采用单元下标(采花括号): B=A1,1 B =1 4 30 5 87 2 9 C=A1,2 C = Anne Smith,whosName Size Bytes ClassA 2x2 644 cell arrayB 3x3 72 double arrayC 1x10 20 char array Grand total is 64 elements using 736 bytes,3 单元阵列(续),A3,1=Add one line; A3,2=2 1;10,-20; A A = 3x3 double Anne Smith 3.0000+ 7.0000i 1x21 doubleAdd one line 2x2 double,小结,主要介绍的内容是MATLAB V6.x所增强的功能,利用这些阵列结构可完成各种复杂的应用。 主要内容包括: 1 多维阵列 2 结构阵列 3 单元阵列,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报