MATLAB入门(一)数组

 特殊变量:

 

数组的创建:

 1 %% 数组的生成(带;不在命令行显示结果)
 2 
 3 x= rand(3) ;   %随机生成3*3的矩阵,矩阵数的值在[0,1]
 4 x(:,1:2:3);  %取所有行,(从第1列开始:步长为2:到第3列结束)
 5 a=rand(3,4);  %3*4的二阶矩阵,也可写randn(3,4 6 b=randn(3,4,5); %3*4*5的三阶矩阵
 7 
 8 y= magic(5); %随机生成一个5阶幻方,任意阶数幻方的各行、各列、各条对角线上所有数的和的公式为:S=n(n^2+1) /2
 9 
10 a1 = [3,9,3; 4,2,4];%直接建立数组,3*2,(first ,last ,step)
11 a2 =(1:2 :12); %增量法建立一纬数组 first:step :last
12 a3 = linspace(1,3,15) ; %linspace(a,b,n)创建一个取值a~b的n个元素的数组
13 a4 = logspace(1,10,12) ;%logspace(a,b,n)创建一个取值在10^a--10^b共n个元素的数组

 

数组的运算:

1 %% 数组的运算 
2 
3 A= magic(4);
4 B = rand(4);
5 C = B/A ; %矩阵的除法,!!!!!!!!!!!!!!!!!!!!!!有问题!!!!!!!!!!!!!!!!!!!!!!!
6 D= B./A ;%数组的除法,对应项相除

元胞数组,一个数组内可以存放不同类型的对象

 

 

 

 

 

 1 %% 元胞数组,一个数组内可以存放不同类型的对象
 2 
 3 %直接创建
 4 R2 = reshape(1:9,3,3);%把数组的1-9,转化为3*3的矩阵
 5 C2 = [1+3i]; %虚数
 6 A2 =  {'matlab', R2,C,'wondful'};
 7 %由于各个元胞创建,R2,C2,A,B利用上面的
 8 D2(1,1) = {R2};
 9 D2(1,2) = {C2};
10 D2(2,1) = {A};
11 D2(2,2) = {B};
12 D2;
13 whos D2;
14 whos C2;
15 %利用函数创建
16 n =3;m =2;
17 c = cell(n) ;%空矩阵,元胞数组n*n
18 c = cell(m,n) ;%空矩阵,元胞数组,n*m
19 
20 
21 %显示
22 celldisp(D2,'nanan');
23 cellplot(D2,'legend')
24 handles = cellplot(D2)

 

 

 

 

 

 

 

 结构数组:

 

 

 1 %% 结构数组
 2  %直接创建
 3  book.name = 'MATLAB';
 4  book.page = 450;
 5  book.data = 20111205;
 6  book;   %显示结构
 7  
 8  %函数创建
 9   s = struct ('type',{'big','little'},  'color',{'red'},  'x',{3 4});
10   s(1);
11   s(2);
12  
13 rmfield(book,'name'); %删除name元素 

 

 

 

 

 

 

posted @ 2018-10-03 15:24  白清欢  阅读(29333)  评论(0编辑  收藏  举报