创建并运行第一个 script展开目录
创建脚本之后,将下面代码复制到编辑器内,然后点击运行或者摁键盘 F5
- for i = 1 : 10
- x = linspace(0,10,101);
- plot(x,sin(x + i));
- print(gcf,'-deps',strcat('plot',num2str(i),'.ps'));
- end
运行后会看到一个运动状态的图,第一个 matlab 脚本就已经创建并且运行成功了,暂时先不用理解代码是什么意思,后面会慢慢讲到的
常用快捷键展开目录
%
:单行注释ctrl + r
:多行注释ctrl + t
:取消多行注释ctrl + i
:智能缩进%%
:指定节ctrl
+ enter:执行节f5
:运行程序
debug 调试程序展开目录
如果程序执行的结果不是我们想要的,但是又不知道哪里出错了,就可以给程序加断点分步调试,看错误在哪里
第一步,加断点
第二步,F5 运行程序
第三步,清除断点并退出调试
条件语句展开目录
if else展开目录
格式:
- if condition1
- statement1
- elseif condition2
- statement2
- else
- statement3
- end
示例:
- a = 3;
- if rem(a,2) == 0 % a对2取余
- disp('a是偶数')
- else
- disp('a是奇数')
- end
switch展开目录
格式:
- switch expression
- case value1
- statement1
- case value2
- statement2
- ...
- otherwise
- statement
- end
示例:
- input_num = 1;
- switch input_num
- case -1
- disp('input_num的值是-1')
- case 0
- disp('input_num的值是0')
- case 1
- disp('input_num的值是1')
- otherwise
- disp('input_num的值不确定')
- end
while展开目录
格式:
- while expression
- statement
- end
示例:
- n = 1;
- while prod(1 : n) < 1e100 % prod(1:n) = 1*2*3*...n
- n = n + 1;
- end
for展开目录
格式:
- for variable = start:increment:end
- commands
- end
示例:
- for n = 1 : 10
- a(n) = 2^n;
- end
顺带提一句,for
循环有时候在处理数据的时候会很消耗时间,下面举个例子
- tic
- for ii = 1 : 2000
- for jj = 1 : 2000
- A(ii,jj) = ii + jj;
- end
- end
- toc % 打印从tic到toc执行的时间 4.6s
但是如果提前做一些处理,比方说提前创建好矩阵,也许能节省不少时间
- tic
- A = zeros(2000,2000)
- tic
- for ii = 1 : 2000
- for jj = 1 : 2000
- A(ii,jj) = ii + jj;
- end
- end
- toc % 打印从tic到toc执行的时间 0.6s
break展开目录
break
语句用来终止 for
或 while
循环的执行。 在循环中,break
语句之后出现的语句不执行。在嵌套循环中,break
仅从它所在的循环中退出。示例:
- a = 10;
- while (a < 20)
- fprint('value of a: %d\n',a);
- a = a + 1;
- if(a > 15)
- break;
- end
- end
Script tips展开目录
当一个程序很复杂,需要运行很久,可是这时我不想程序继续运行下去了,就可以在命令行窗口摁下 ctrl + c
,此时程序就会停止了
Matlab function展开目录
格式:
第一个 function展开目录
这里我自定一个自由落体的 function 作为例子写完一个 function 之后,直接保存,文件名一般情况下默认的是 function 的名字,不用改动,然后使用这个 function