-
本文基于 bilibili : 陈小鱼学姐【MATLAB 快速上手】45min 搞定基础语法与使用技巧!
-
本文 MATLAB 版本为 R2024a
# 主界面介绍
# 语法
# 1. 赋值语句
# (1)变量赋值
语法:
“变量名” = “数值” ;
运行后会把变量和值都显示在右侧的工作区。双击变量会出现一个电子表格,表示存放在变量中的矩阵,如下图。
# (2)矩阵赋值
语法:
“变量名” = [……] ;
“[]” 中填入矩阵元素。若矩阵有多行,用分号将元素分开表示换行,双击矩阵的变量名查看矩阵元素,如下图。
# 2. 取矩阵中的值
# (1) 取一个值
a= A(2,2);
(含义:将矩阵 A 的第二行第二列的元素取出并赋值给变量 a;行列下标均从 1 开始)
# (2) 取多个值
a1= A(2,[2,3]); |
(含义:将矩阵 A 的第二行第二列与第二行第三列的元素取出并赋值给变量(矩阵,向量)a1)
a2=A(2,(2:4)); |
(含义:将矩阵 A 的第二行第二列到第二行第四列的元素(含两端点)取出并赋值给变量(矩阵,向量)a2);
如果只写 “:”,则取出这一行(列)中的所有元素。
如果写 A(:,:);,则取出 A 的所有元素。
# 3. 矩阵运算
# (1) 矩阵的转置
C=A'; |
(含义:将矩阵 A 转置后赋值给变量 C);
# (2) 矩阵之间的运算
# ① 加减
D=A+B; | |
E=A-B; |
注:(运算符合线性代数中矩阵的运算相关知识)
-
如果把两个维度不同的矩阵相加减,会报错,有时不报错但会出现错误答案。
-
矩阵加(减)一个数:将每个元素都加(减)这个数,生成一个新的矩阵。
# ② 乘 (叉乘与点乘)
X=[1,2;3,4]; | |
Y=[5,6;7,8]; | |
Z1=X*Y; | |
Z2=X.*Y; |
Z1 的结果为 [19,22;43,50]; 不难看出是矩阵乘法运算
Z2 的结果为 [5,12;21,32]; 对应位置相乘,是矩阵的点乘运算。
除法运算同理。
# 4. 打印
fprintf('Hello World'); |
# 5. 分支结构
if a<5 | |
…… | |
else if a==5 | |
…… | |
else | |
…… | |
end |
# 6. 循环结构
for i=1:1:10 | |
% 变量名 = 初始值:步长:终止值 只写两个冒号默认步长为一,两边为开始终止值 | |
…… | |
end |
# 注 1:工作区
MATLAB 里只有一个工作区,即便有多个代码同时运行,他们共用同一个工作区。因此可能出现错误结果,因此我们每次运行程序都要清空工作区。
在开头键入代码:
clc; % 清空命令行 | |
clear; % 清空工作区 | |
close all; % 清空图表 |
# 注 2:在 MATLAB 编辑器中输入块注释
MATLAB 支持通过 %{
和 %}
定义多行注释块。需注意以下语法规则:
- 符号必须单独成行:
%{
和%}
必须分别位于独立行,且前后不能有其他字符(包括空格)。 - 不支持嵌套:块注释不能嵌套使用。
示例:
%{ | |
这是多行注释的第一行 | |
这是第二行 | |
这是第三行 | |
%} | |
disp('Hello World'); % 注释外的代码正常执行 | |
%% 带分割线的注释 | |
独立行,且前后不能有其他字符(包括空格)。 | |
2. **不支持嵌套**:块注释不能嵌套使用。 | |
**示例:** | |
```matlab | |
%{ | |
这是多行注释的第一行 | |
这是第二行 | |
这是第三行 | |
%} | |
disp('Hello World'); % 注释外的代码正常执行 | |
%% 带分割线的注释 |