MATLAB 基础语法快速入门
目录
1. 变量与数据类型
1.1 变量定义
-
无需声明类型,直接赋值即可创建变量
a = 10; % 标量 str = 'Hello MATLAB'; % 字符串 flag = true; % 逻辑值
1.2 常用数据类型
类型 | 示例 | 说明 |
---|---|---|
double | x = 3.14 | 双精度浮点数(默认) |
int8 | y = int8(100) | 8位整数 |
char | s = 'ABC' | 字符数组 |
logical | flag = (5 > 3) | 逻辑值(true/false) |
cell | c = {1, 'text', []} | 元胞数组 |
struct | data.name = 'Tom' | 结构体 |
2. 矩阵与数组操作
2.1 矩阵创建
A = [1 2 3; 4 5 6; 7 8 9]; % 3x3矩阵
B = zeros(2,3); % 2x3零矩阵
C = ones(1,4); % 1x4全1矩阵
D = linspace(0,10,5); % 0到10的5等分向量
E = 1:2:9; % 1到9,步长2 → [1 3 5 7 9]
2.2 矩阵操作
操作类型 | 代码示例 | 说明 |
---|---|---|
索引 | A(2,3) | 获取第2行第3列元素 |
切片 | A(1:2, :) | 取前两行所有列 |
转置 | A' | 矩阵转置 |
拼接 | [A; B] (垂直拼接) | B必须与A列数相同 |
点运算 | A .* B (逐元素乘法) | 与矩阵乘法A*B 区分 |
2.3 常用矩阵函数
sum(A, 1) % 按列求和 → 行向量
max(A(:)) % 矩阵最大值
size(A) % 返回矩阵维度
reshape(A,2,6) % 重塑为2x6矩阵
3. 流程控制
3.1 条件语句
% if-elseif-else结构
x = randi(100);
if x > 90
disp('优秀');
elseif x > 60
disp('合格');
else
disp('不合格');
end
3.2 循环语句
% for循环示例
for k = 1:5
fprintf('第%d次循环\n', k);
end
% while循环示例
n = 0;
while n < 3
n = n + 1;
end
3.3 向量化操作(替代循环)
% 计算1到100的平方(避免for循环)
nums = 1:100;
squares = nums.^2;
4. 函数编写
4.1 函数文件结构
function [output1, output2] = myfunc(input1, input2)
% MYFUNC 函数简要说明
% 详细说明(显示在help中)
% 输入: input1 - 参数描述
% input2 - 参数描述
% 输出: output1 - 结果描述
% output2 - 结果描述
% 函数体
output1 = input1 * 2;
output2 = input2 + 5;
end
4.2 匿名函数
% 定义匿名函数
cube = @(x) x^3;
% 调用
result = cube(3); % 返回27
5. 注意事项
-
变量名规则
- 区分大小写(
data
≠Data
) - 不能以数字开头(
2var
❌)
- 区分大小写(
-
分号使用
- 行末加分号
;
可抑制输出显示
- 行末加分号
-
工作区管理
- 使用
clear
清除变量,clc
清空命令窗口
- 使用
-
帮助系统
-
快速查看函数文档:命令行输入
help 函数名
help linspace
-
-
常见错误
- 矩阵维度不匹配(使用
size()
检查维度) - 未定义的函数/变量(检查拼写和路径)
- 矩阵维度不匹配(使用
数学建模实战技巧
- 多用向量化操作代替循环(提升运行速度)
- 使用
tic
和toc
计时代码段- 调试时设置断点(点击编辑器左侧短杠区域)