MATLAB01

在命令行窗口输入edit就会进入代码编写区,编写完毕点击运行后会先进行保存,然后再执行代码,保存时候一定要以英文开头。

数组

创建矩阵:

函数名描述
zero(m,n)创建m行n列全零矩阵
ones(m,n)创建m行n列全1矩阵
eye(m,n)创建m行n列单位矩阵
rand(m,n)创建m行n列服从0~1均匀分布矩阵
randn(m,n)创建m行n列服从标准正态分布的随机矩阵
magic(n)创建n阶梯魔方矩阵
linspase(x1,x2,n)创建线性等分向量
logspase(x1,x2,n)创建对数等分向量
diag创建对角矩阵

 

 

 

 

 

 

 

 

 

 

使用:

>> clear
>> rand('seed',2)
>> a = rand(2,2)

a =

   2.5818e-02   7.0079e-01
   9.2097e-01   1.9009e-01

>> a(2,1)

ans =

   9.2097e-01

>> a(2)

ans =

   9.2097e-01

>> a(2,:)

 
  

ans =

 
  

9.2097e-01 1.9009e-01


>> b=a>0.75 b = 2×2 logical 数组 0 0 1 0 >> a(b) ans = 9.2097e-01

>> a(2,:) = []

 
  

a =

 
  

2.5818e-02 7.0079e-01

 

整型

在基本数值类型中,整数只能与相同类的整数或标量双精度值组合使用;

字符类型

字符串函数描述
blanks(n)返回n个空字符
deblank(s)移除字符串尾部包含的空字符
strfind(s1,s2)在s1中寻找s2,返回s2第一个字符所在的位置索引
ischar(s)判断是否为空字符串
isletter判断是否为字母
lower(s)字母转换小写
upper(s)字母转换为大写
strcat(s1,s2,...sn)连接各字符串
strcmp(s1,s2)按字典顺序比较两个字符串
strncmp(s1,s2,n)比较字符串中的前n个字符
strrep(s1,s2,s3)s1中的s2部分用s3替换

 

 

 

 

 

 

 

 

 

 

 

 

 

函数句柄


句柄的声明可用如下方法:

1.直接使用@符号声明函数句柄,形式为:变量名=@函数名

2.用str2func函数,形式为:变量名=strfun('函数名')

3.声明匿名函数句柄,形式为:变量名=@(输入参数列表)函数表达式。

 

结构体和元胞数组

元胞数组的元素可以是任意数据类型、任意维度的数据。与矩阵不同,元胞数组引用元素时使用‘{}’操作符,此时得到的数据类型是元素本身的类型,而使用‘[ ]’操作符引用元素时,得到的是一个小一些的元胞数组。元胞数组的内存空间是动态分配的,因此更加灵活,但运行效率欠佳。

元胞数组可以直接创建,也可以使用cell函数创建。结构类型数据的创建也有两种方法,一种是直接创建,另一种是利用struct函数创建。

使用:

>> %利用单元索引创建一个2×2的元胞数组
>> 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/4:pi};
>> A

A =

  2×2 cell 数组

    {3×3 double                }    {'Anne Smith'}
    {[3.0000e+00 + 7.0000e+00i]}    {1×9 double  }

>> %利用cell函数创建元胞数组
>> strArry = java_array('java.lang.String',3);
>> strArry(2) = java.lang.String('two');
>> strArry(1) = java.lang.String('one');
>> strArry(3) = java.lang.String('three');
>> cellArray = cell(strArry)

cellArray =

  3×1 cell 数组

    {'one'  }
    {'two'  }
    {'three'}

算术运算

进行矩阵运算时候,A*B中,矩阵A的列数必须等于矩阵B的行数。标量与矩阵进行的运算,是标量与矩阵中每个元素进行数组运算。转置与共轭转置运算的区别是,共轭转置会在对矩阵取转置的同时取每一个元素的共轭。

矩阵的左除可以用来求解线性方程组:A\B相当于A-1B;数组左除是通常的除法运算,但操作数的含义与右除相反;A\B表示B÷A。

 

转载于:https://www.cnblogs.com/zhangzimu/p/8682840.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值