MATLAB 循环控制全攻略:for、while、嵌套循环与 break/continue 流程控制
循环让代码块重复执行。MATLAB 提供三种循环形式:
| # | 循环类型 | 适用场景 |
|---|---|---|
| 1 | while | 条件为真持续执行,先判断后执行 |
| 2 | for | 遍历已知范围/数组,自动管理循环变量 |
| 3 | 嵌套循环 | 循环内再套循环,处理多维遍历 |
while 循环
while condition
statements
end
示例:累加直到超过 100
sum = 0; n = 1;
while sum <= 100
sum = sum + n;
n = n + 1;
end
for 循环
for index = values
statements
end
values 可为:
start:step:end— 等差数列array— 遍历数组每列(按列优先)cellArray— 遍历元胞
常见模式
% 1 到 10 for i = 1:10; disp(i); end % 步长 0.5 for x = 0:0.5:2; disp(x); end % 遍历矩阵每列 A = magic(3); for col = A; disp(col'); end % 反向遍历 for k = 10:-1:1; disp(k); end
嵌套循环
for i = 1:3
for j = 1:2
fprintf('(%d,%d) ', i, j);
end
fprintf('\n');
end
(1,1) (1,2) (2,1) (2,2) (3,1) (3,2)
循环控制语句
| 语句 | 作用 |
|---|---|
break | 立即终止当前层循环,跳至循环后第一条语句 |
continue | 跳过本次迭代剩余代码,直接进入下一次迭代判断 |
break 示例
for n = 1:10
if n == 5, break; end
disp(n);
end
% 输出 1 2 3 4
continue 示例
for n = 1:5
if mod(n,2)==0, continue; end
disp(n);
end
% 输出 1 3 5
性能提示
- 尽量向量化替代循环(如
sum(A)代替求和循环) - 预分配数组:
x = zeros(1, n)再赋值 - 大数据量考虑
parfor(Parallel Computing Toolbox)
MATLAB
- MATLAB 入门指南:矩阵实验室的核心能力与应用领域全景
- MATLAB 变量深度解析:矩阵本质、赋值、多重赋值、查看与清理、长赋值、格式控制、向量创建
- MATLAB 常用命令速查:会话管理、系统操作、输入输出、矩阵数组、绘图可视化
- MATLAB 数据类型完全指南:15 种基本类型、转换函数与类型判断函数速查表
- MATLAB 运算符大全:矩阵/数组算术、关系、逻辑、位运算、集合运算详解
- MATLAB 矩阵核心操作:创建、索引引用、子矩阵提取、行列删除、拼接与基本运算
- MATLAB 多维数组与特殊数组完全指南
- MATLAB 冒号运算符详解:向量创建与高效迭代
- MATLAB 数值类型详解:存储、转换与范围查询
- MATLAB 字符串完全指南:创建、拼接、元胞数组与常用函数
- MATLAB 函数详解:定义、工作区、输入输出与多种函数类型
- MATLAB 代数方程求解:solve、因式分解与化简