MATLAB 控制结构

分支结构

MATLAB 中的分支结构有 if-else 结构、switch 结构。

if 语句

if 语句的语法格式如下:

1
2
3
4
5
6
7
if condition
statement
elseif condition
statement
else
statement
end

其中,condition 是一个逻辑表达式,statement 是一个语句。elseifelse 部分是可选的。

只有 conditiontrue 时,对应分支的 statement 才会被执行。若 conditionfalse,则跳过该分支,继续执行下一个分支。所有分支都不满足 condition 时,执行 else 分支。

switch 语句

switch 语句的语法格式如下:

1
2
3
4
5
6
7
8
switch expression
case value1
statement
case value2
statement
otherwise
statement
end

其中,expression 是一个表达式,value1value2expression 可能的值,statement 是一个语句。otherwise 部分是可选的。

switch 语句会依次比较 expressionvalue1value2 的值,若相等,则执行对应分支的 statement。若 expression 的值与所有 value 都不相等,则执行 otherwise 分支。


循环结构

MATLAB 中的循环结构有 for 循环、while 循环。

for 循环

for 循环的语法格式如下:

1
2
3
for i = start : step : end
statement
end

其中,i 是一个变量,startstepend 是一个表达式。statement 是一个语句。

for 循环会依次执行 statementi 的值从 start 开始,每次增加 step,直到 i 的值大于 end 时停止。

while 循环

while 循环的语法格式如下:

1
2
3
while condition
statement
end

其中,condition 是一个逻辑表达式,statement 是一个语句。

while 循环会依次执行 statement,直到 conditionfalse 时停止。

break 语句

break 语句用于终止 forwhile 循环。

1
2
3
4
5
6
for i = 1 : 10
if i == 5
break
end
disp(i)
end

上述代码会输出 14

continue 语句

continue 语句用于跳过 forwhile 循环中的当前迭代。

1
2
3
4
5
6
for i = 1 : 10
if i == 5
continue
end
disp(i)
end

上述代码会输出 14610


附表

控制结构相关语句:

语句说明
if, elseif, else条件为 true 时执行语句
switch, case, otherwise执行多组语句中的一组
for用来重复指定次数的 for 循环
while条件为 true 时重复执行的 while 循环
try, catch执行语句并捕获产生的错误
break终止 for 或 while 循环
return将控制权交还给调用脚本或函数
continue将控制传递给 for 或 while 循环的下一迭代
pause暂时停止执行 MATLAB
parfor并行 for 循环
end终止代码块