注:这篇文章是我对自己学习的基础知识的一个总结,所以可能不是很好理解
1.一些常用的函数(必背)
mod(10,3) %求余数=1;
inv(3) %求倒数=1/3,当然这个也可以求逆,如inv(a);
abs(-3) %求绝对值=3,同时也可以将字符串转化为数字;
char(double) %将数字转换为字符串;
syms a b c %符号化,后续学习符号函数会使用到;
b=a(:) %将矩阵转化为单列,这个在求最大值和最小值常用到;
ones eye diag magic %常用的几种构建矩阵的函数;
[V,D]=eig(A) %[特征向量,特征值]
trace rank %分别是迹和秩
linspace(起点,终点,多少位数) %logspace 生成对数间隔值
a=起点:步值:终点 %这是另一种常用来构造举证的方式
sind(90)=sin(pi/2) %三角函数的两种使用形式
fix floor ceil round %几种取整函数,结合英语含义好记一点:fix固定,朝“0”取整;floor地板,朝无穷小取整;ceil天花板,朝无穷大取整;round四舍五入。
find %查找函数,功能非常强大,以下列出几种用法。
find(x) %查找非零元素,并返回序号(matlab矩阵中元素序号是按列数的),当然也可以这样使用来查找“0”,find(~x),“~”代表“非”。
find(x<10,5) %查找矩阵x中小于“10”的前五个元素,注意查找数值为小数时,为避免误差,尽量使用容差,如find(abs(x-10.1)<0.001)。
find(x<10,5,'last') %查找矩阵x中小于10的最后五个元素。
[row,col]=find(x>0&x<10,3) %查找满足多个条件的元素,并返回相应元素行下标和列下标构成的列向量。
length %这个很简单length([1 2 3;4 5 6]) =3
pretty(sym(a)) %美化结果a,使结果不显示为小数
D=sub2ind(size(a),I,J) %行列下标转换为序号
[I,J]=ind2sub(size(a),D) %序号转化为行列下标
end %末尾元素的下标,例a(1,end)表示矩阵a第一行,最后一列的元素。
isprime isempty isequal %依次为判断是否为素数、空、相等。
findstr(s,s1) %s,s1,s2均为字符串,这个函数是找到短字符串在长字符串中的位置,注意s和s1的位置不影响结果,另空格也算一位。
strrep(s,s1,s2) %在s中用s2替换s1
strcmp(s1,s2) %s1和s2是否相等
strcmpi(s1,s2) %忽略大小写,看s1和s2是否相等
2.常用快捷键(后续编程能方便许多)
方向键↑:调出历史命令中的前一个命令
Tab键:根据输入的前几个字母,按下Tab键,可以自动查询可能的命令
Ctrl + =/Shift + Ctrl + = :折叠/展开代码 %这个后面写比较长的程序的时候会用的比较多。
%% 设置节 %这是一个折叠代码的操作,但默认是关闭的,需要我们打开。方法如下图:
Ctrl + r/Ctrl + t :注释和取消注释
Ctrl + i :自动整理代码
Ctrl + g :调到目标行
Ctrl + f :文本查找
3.练习
将I love You全部转换为大写
clear;clc %clear清空变量,clc清空命令行窗口
s='I love You'; %如下代码实现将s中的所有小写字母转化为大写字母
a=find(s>='a'&s<='z'); %找到s中小写字母的序号
s(a)=char(abs(s(a)-32)); %将小写字母转化为数字减去32后再转化为字符串
disp(s) %显示变量的值
注:当然upper/lower命令可以直接改变字符串的大小写。