MATLAB基本语法先抓三件事:分号决定结果显不显示,表达式大体按数学习惯写,注释用 %。跑完这段,后面几节在讲什么就对得上了:

MATLAB 基本语法与输出示例运行
x = 3;
y = x + 5;
z = x ^ 2;
disp(['x 是 ', num2str(x), ',y 是 ', num2str(y)])
disp(['x 的平方是 ', num2str(z)])

输出:

x 是 3,y 是 8
x 的平方是 9

x = 3; 执行后窗口没有打印赋值结果,而 disp 打印了字符串。差别来自分号。

分号与显示

  • 语句末尾加 ;:执行,但不在命令窗口显示结果
  • 不加分号:执行,并立刻显示结果
a = 1;   % 不显示
b = 2    % 显示
c = a + b

输出:

b = 2
c = 3

脚本里除了最终要检查的量,中间计算宜加分号,避免刷屏。

表达式

幂、三角函数、开方等写法与常见数学记号接近:

3 ^ 2        % 3 的 2 次方
sin(pi/2)    % 正弦(参数为弧度)
sqrt(16)     % 平方根
log(exp(1))  % ln(e)

输出:

ans = 9
ans = 1
ans = 4
ans = 1

未赋给其它变量时,结果进入 anspi 为内置圆周率。

注释

单行注释从 % 写到行末。多行注释用 %{%} 成对包裹:

x = 9;      % 把 9 赋给 x
% 这一整行都是注释
y = x * 2
%{
这段被整体注释,
不会执行。
%}
z = 1;

常用运算符

符号作用
+ -加减
* .*矩阵乘法 / 数组(逐元素)乘法
^ .^矩阵乘方 / 数组乘方
/ \右除 / 左除(常用于解线性方程)
./ .\数组右除 / 左除
:生成等差序列,如 1:5
'转置
%注释

带点号的 .*.^ 等是数组运算(逐元素)。不带点的按矩阵(线性代数)规则。二者区别在运算符专篇和矩阵章节还会展开。

内置常量

名字含义
ans最近一次未赋值的结果
pi圆周率 π
i j虚数单位
Inf无穷大(如 1/0
NaN非数值(如 0/0
eps浮点相对精度

常见误区

  • 不要把 pii 等内置名改写成普通变量。若已执行 pi = 3,可用 clear pi 清除该名字,或重启会话恢复默认。
  • 名字区分大小写:PIpi 不是同一个标识符。
  • 变量名不能以数字开头:3x 非法,x3 可以。