矩阵:
%向量是矩阵的特殊格式
%冒号表达式创建向量 e1:e2:e3 初始值:步长:终止值
%linspace函数创建向量 linspace(a,b,n) (第一个元素,最后一个元素,元素总数)
%结构矩阵的建立: 结构矩阵元素.元素名=表达式
a(1).x1=10;a(1).x2='liu';a(1).x3={11,21;34,78};
a(2).x1=12;a(2).x2='wang';a(2).x3={11,21;34,78};
a(3).x1=14;a(3).x2='cai';a(3).x3={11,21;34,78};
a
%单元矩阵:用大括号括起来
b={10,'liu',[11,21;34,78];12,'wang',[11,21;34,78];...
14,'cai',[11,21;34,78]}
%B=reshape(A,m,n) 在矩阵总元素保持不变的情况下,将矩阵A重新排成m*n的矩阵
%注意:原矩阵A不变,B为重排后
% A(:)等价于reshape(A,n,1)
字符串:
%{
建立一个字符串向量,然后对该向量做如下处理:
① 取第1~5个字符组成的子字符串。
② 将字符串倒过来重新排列。
③ 将字符串中的小写字母变成相应的大写字母,其余字符不变。
④ 统计字符串中小写字母的个数。
ch='ABc123d4e56Fg9';
subch=ch(1:5)
revch=ch(end:-1:1)
k=find(ch>='a'&ch<='z')
ch(k)=ch(k)-('a'-'A')
length(k)
%}
t=1;
m='[t,sin(t),cos(t)]';
y=eval(m)
s1='MATLAB';
a=abs(s1)
char(a+32)
s2='Matlab';
n=1;
%字符串比较函数(返回1or0):
strcmp(s1,s2);
strncmp(s1,s2,n); %比较前n个字符
strcmpi(s1,s2); %忽略字符串大小写
strncmpi(s1,s2,3);
s3='why study MATLAB?';
s4='MAT';
%字符串查找与替换
findstr(s3,s1) %返回短字符串s1在长字符串s3中的开始位置
strrep(s1,s4,s3) %将s1中所有子字符串s4替换为s3
计算:
x=sqrt(7)-2i;
y=exp(pi/2);
z=(5+cosd(47))/(1+abs(x-y))
%{
who 与 whos 命令 查看工作区变量
save命令:创建内存变量文件 save mydata x y
load命令:装入内存变量文件 load mydata
%}
%计算100以内的素数
x=1:100;
k=isprime(x);
k1=find(k);
p=x(k1)
维数:
m=345;
m1=rem(m,10)
m2=rem(fix(m/10),10)
m3=fix(m/100)
%{
rem(x,y)=x-y.*fix(x./y); (fix()向0取整)
mod(x,y)=x-y.*floor(x./y); (floor()向下取整)
ceil():向上取整
round():四舍五入
}%
运算:
% Matlab所有运算都是针对矩阵,单个算术运算只是矩阵特例。
% 若A矩阵是非奇异方针,则
% B/A等效于B*inv(A)
% A\B等效于inv(A)*B
A=[1,2,3;4,2,6;7,4,9]
B=[4,3,2;7,5,1;12,7,92]
B\A
A\B
A.*B
A*B
C=[1,2,3;4,5,6;7,8,9]
C^2