优先组中的左向右
优先组是(第一组最高):
1. 括号(())
2. 次方(^)
3. 乘法和除法(*/)
4. 加减(+,-)
%%sqrt(Y):根号;log(Y):ln y;exp(Y):e^y.
>> cos(((1+2+3+4)^3/5)^(1/2))
>> cos(sqrt((1+2+3+4)^3/5))
>> sin(sqrt(pi))+log(tan(1))
>> exp(sin(10))
函数可以嵌入到其他函数中:sin(cos(pi))与cos(pi);sin(ans)结果相同
许多代码行可以浓缩成一个命令。
在赋值之前不需要声明变量;“等于”符号(=)是赋值运算符:> A = 10
大小写不同的变量是不同的;可以把_和字母放在首位。
A = 2 %变量赋值
who %列出工作区中的变量
whos %列出工作区中的变量及大小和类型
iskeyword %获取所有 MATLAB 关键字的列表
ans:结果 i,j:复数 Inf:无穷 eps:自然常数e NaN:不是数字 pi:圆周率
列出关键字:
>> iskeyord
从高到低:变量——内建函数——子函数——私人函数(MEX-file,P-file,M-file)
%%清除变量clear variable-name
>> cos=("This string.");cos(8)
ans = "r"
>> clear cos %清除cos这个名称的变量
>> cos(8)
ans = -0.1455
%%清除工作区中的所有变量,谨慎使用
>> clear all
>> format short;pi %短小数
ans = 3.1416
>> format long;pi %长小数
ans = 3.141592653589793
>> format shortE;pi %短小数的科学记数法
ans = 3.1416e+00
>> format longE;pi %长小数的科学记数法
ans = 3.141592653589793e+00
>> format rat;pi %将无理数近似为有理数分数或将有理数变为分数
ans = 355/113
>> format bank;pi %保留两位小数
ans = 3.14
>> format hex;pi %十进制转化为十六进制
ans = 400921fb54442d18
>> A = 3/13 + 4/14 + 5/15
A = 0.8498
>> format rat;A
A = 232/273
>> format long;A
A = 0.849816849816850
分号(;):在命令的末尾,取消在命令窗口的输出。
%%不显示运算结果
>> A = 10;
clc:清空命令窗口
箭头键↑:从命令历史记录中重新调用语句
who:显示工作区中的变量
whos:显示工作区中的变量信息
a = [1 2 3 4]; %行向量
b = [1;2;3;4]; %列向量
>> a * b
ans = 30
>> b * a
ans =
1 2 3 4
2 4 6 8
3 6 9 12
4 8 12 16
>> A = [1 21 6;5 17 9;31 2 7]; %矩阵
>> A(8) %单个数字表示从第一列开始数
ans = 9
>> A(3,2) %A(行,列)
ans = 2
>> A([1 3 5])
ans = 1 31 17
>> A([1 3;1 3])
ans =
1 31
1 31
>> A([1 3],[1 3])
ans =
1 6
31 7
A(1,2) = 76;A(3,2) = 0;
A([1 2],[2 3]) = [0 0;0 0];
A(3,:) = []
A =
1 0 0
5 0 0
>> A = [1:100] % 从1到100,公差为1的等差数列矩阵
>> A = [1:2:99] % 从1到99,公差为2的等差数列矩阵
>> str = 'a':2:'z' %生成acegikmoqsuwy的字符串
只要保持矩形形状,就可以通过级联形成数组。
>> A = [1 2;3 4]; B = [8 7;5 6];
>> C = [A B] %两个矩阵横向叠加
>> D = [A;B] %两个矩阵纵向叠加
>> A = [1 2;3 4];B = [8 7;5 6];a = 2;
>> A + a %矩阵加实数
>> A * a %矩阵乘实数
>> A ^ a %矩阵的实数次方
>> A .^ a %矩阵上每个元素的实数次方
>> A' %转置
>> A + B %矩阵相加
>> A * B %矩阵相乘
>> A .* B %矩阵对应位置的元素相乘
>> A / B %矩阵相除
>> A ./ B %矩阵对应位置的元素相除
linspace(1,10,2) % 生成1 3 5 7 9的线性间距向量
eye(2) % 2X2的单位方阵,对角线上元素为1
zeros(2,3) % 2X3的零矩阵
ones(2,3) % 2X3的一矩阵
>> diag([2 3 4]) % 对角线矩阵
ans =
2 0 0
0 3 0
0 0 4
rand(5) % 生成5X5的拥有均匀分布的随机数矩阵
>> A = [1 2 3;0 5 6;7 0 9];
>> max(A) % 矩阵中每列元素的最大值
>> max(max(A)) % 矩阵中全部元素的最大值
>> min(min(A)) % 矩阵中全部元素的最小值
>> sum(A) % 矩阵中每列元素之和
>> mean(A) % 矩阵中每列元素取平均
>> sort(A) % 矩阵中每列元素从小到大排序
>> sortrows(A) % 绑定行对第一列排序
>> size(A) % 数组大小
ans =
3 3
>> length(A) % 最大数组维度的长度
>> find(A==2) % 找到矩阵中对应元素的位置
ans = 4