Matlab教程002:Matlab变量和基本运算符的使用
文章目录
- 1.3 运算基础
- 1.3.1 Matlab的变量
- 1.3.2 基本运算符的使用
1.3 运算基础
1.3.1 Matlab的变量
MATLAB 变量命名基本规则
变量名必须以字母(A-Z 或 a-z)开头
✅ 有效示例:
speed = 60;
temperature = 25.5;
Data123 = 100;
❌ 无效示例:
123data = 50; % 变量不能以数字开头
变量名只能包含字母(A-Z, a-z)、数字(0-9)和下划线(_)
✅ 有效示例:
max_speed = 120;
temperature_1 = 37.5;
❌ 无效示例:
max-speed = 120; % 不能包含“-”(减号)
price$ = 50; % 不能包含特殊符号(如 $、@、# 等)
变量名不能是 MATLAB 关键字或内置函数名(如 if
, for
, while
, sin
, cos
, sum
等)
✅ 有效示例:
mySum = sum([1, 2, 3]); % 可以使用 sum 作为函数,但变量名不能直接命名为 sum
❌ 无效示例:
sum = 10; % 不建议这样命名,会覆盖 MATLAB 内置的 sum 函数
可以使用iskeyword
来查看关键词有哪些:
变量名大小写敏感(Case-Sensitive)
- MATLAB 区分大小写,
Variable
和variable
是两个不同的变量:
Variable = 10;
variable = 20;
disp(Variable); % 输出 10
disp(variable); % 输出 20
变量名不能超过 63 个字符(MATLAB 允许的最大变量名长度)
myVeryLongVariableNameThatExceedsSixtyThreeCharactersIsNotValid = 100; % ❌ 变量名过长
变量名不能包含空格
❌ 无效示例:
my variable = 50; % 变量名不能包含空格
✅ 推荐替代方案:
my_variable = 50; % 使用下划线分隔单词
myVariable = 50; % 使用驼峰命名法(camelCase)
除了基本规则外,遵循 良好的命名习惯 能让代码更清晰、更易读:
✅ 推荐:
-
使用 有意义的变量名(避免使用
a
,b
,c
这样的无意义变量)velocity = 30; % 直观表述速度 temperatureC = 25; % 温度(单位摄氏度)
-
使用 驼峰命名法(camelCase) 或 下划线命名法(snake_case)
totalDistance = 100; % camelCase total_distance = 100; % snake_case
-
不要覆盖 MATLAB 内置函数
length = 50; % ❌ 避免使用 length(MATLAB 内置函数) len = 50; % ✅ 替代命名
-
使用前缀或后缀表示变量类型
speed_kmh = 80; % 速度(公里每小时) matrix_A = rand(3); % 表示矩阵变量
MATLAB数据类型:
- 数字:整数和浮点数
- 字符与字符串:
''
和""
- 矩阵:
[]
1.3.2 基本运算符的使用
运算符 | 作用 | 示例 | 结果 |
---|---|---|---|
+ | 加法 | 3 + 5 | 8 |
- | 减法 | 10 - 4 | 6 |
* | 乘法 | 3 * 7 | 21 |
/ | 右除(常规除法) | 10 / 2 | 5 |
\ | 左除(矩阵运算) | 4 \ 8 | 2 |
.^ | 逐元素幂 | [2,3].^2 | [4,9] |
.^ | 逐元素开方 | [4,9].^(1/2) | [2,3] |
mod | 取模(余数) | mod(10,3) | 1 |
✅ 示例:
A = 5;
B = 2;
C = A + B; % C = 7
D = A / B; % D = 2.5
E = A^B; % E = 5^2 = 25
关系运算符(Relational Operators)
用于比较两个数值,结果返回逻辑值 1
(true)或 0
(false)。
运算符 | 作用 | 示例 | 结果 |
---|---|---|---|
== | 等于 | 5 == 5 | 1 (true) |
~= | 不等于 | 5 ~= 3 | 1 (true) |
> | 大于 | 10 > 3 | 1 (true) |
< | 小于 | 2 < 5 | 1 (true) |
>= | 大于等于 | 8 >= 8 | 1 (true) |
<= | 小于等于 | 7 <= 4 | 0 (false) |
✅ 示例:
x = 10;
y = 5;
result1 = (x > y); % 1 (true)
result2 = (x == y); % 0 (false)
逻辑运算符(Logical Operators)
用于处理布尔逻辑运算。
运算符 | 作用 | 示例 | 结果 |
---|---|---|---|
& | 逻辑与(逐元素) | [1,0,1] & [0,1,1] | [0,0,1] |
` | ` | 逻辑或(逐元素) | `[1,0,1] |
~ | 逻辑非 | ~1 | 0 |
&& | 逻辑与(短路) | true && false | false |
` | ` | 逻辑或(短路) |
✅ 示例:
a = true;
b = false;
c = a & b; % 0 (false)
d = a | b; % 1 (true)
e = ~a; % 0 (false)
⚠️ 区别:
&&
和||
仅用于标量(单个值)运算,并且具有短路特性(前面值确定结果后,不再计算后面的值)。&
和|
可用于数组元素间的逐元素运算。