一.for循环(循环语句)
1.for循环的简单结构
for i=1:100 % i从1:100的向量中逐一取值,分别执行循环语句块中的命令
%循环语句块
end % end表示循环结束
2.for循环对矩阵和向量的简单遍历
同理,如果等号右边是一个矩阵,会一个一个读取A中的每一列元素到i,一次执行循环语句块
A=[12,32,43
43,534,24
34,43,434]; %定义一个矩阵
for i=A %从A中循环读取每一列元素
i %打印i的值
%可以发现i是一个列向量
end
3.for循环的嵌套
for循环语句中也可以嵌套一个for循环(用的不多)
i=0
for i=1:10
for j=1:10
i,j %打印i,j的值
end %每一个for循环都用end来表示循环结束
end
二.ifelse分支(判断语句)
1.if语句的基本结构(判断条件为一个数)
x=10
if x>0 %if的左边是一个判断,x是否大于0,如果为真就执行下面的语句,如果为假则跳过
x=20 %判断语句块
end %标志if语句的结束
x
2.if判断条件为矩阵
a.关于逻辑向量
A=[2 2 3
4 2 4
6 2 3];
A>2 %对于矩阵的逻辑判断,matlab会对A中所有的元素逐一判断,正确返回1,错误返回0
%最终返回一个逻辑矩阵
b.判断条件为矩阵
matlab中if语句的条件如果为逻辑矩阵,必须全为真才会执行
A=[2 2 3
4 2 4
6 2 3];
y=0;
if A>2 %A中的值并没有全部大于2,所以y=1不会执行
y=1;
end
if A>1 %A中的值全部大于1,所以y=2会执行
y=2;
end
y %y的最终结果为2
%注意:直接复制粘贴无法在matlab中执行
3.if-ifelse-else语句的基本结构
clc,clear
x=10 %定义一个变量x
if x>10 %如果x>10,则执行第5行,执行完后执行第11行
x=1; %否则执行elseif语句
elseif x<10 %如果x<10,则执行第7行,执行完后执行第11行
x=-1; %否则直接执行elseif语句中的类容
else
x=0
end
x %输出x的值