MATLAB基础语法
MATLAB的基础语法包括变量赋值、矩阵操作、控制流语句、函数定义与调用等几个方面。
1. 变量赋值
MATLAB中的变量无需事先声明类型,赋值时自动确定。变量名以字母开头,后跟字母、数字或下划线,且区分大小写。
Matlab
a = 5; % 数值赋值
b = 'Hello, MATLAB!'; % 字符串赋值
c = [1, 2, 3; 4, 5, 6]; % 矩阵赋值
2. 矩阵操作
MATLAB以矩阵为基本数据结构,提供了丰富的矩阵操作函数。
Matlab
% 矩阵创建
A = [1 2 3; 4 5 6; 7 8 9];
% 矩阵转置
B = A';
% 矩阵乘法
C = A * A'; % 注意这里使用的是*操作符,不是.*
% 矩阵元素访问
element = A(2, 3); % 访问第二行第三列的元素
3. 控制流语句
MATLAB支持if-else、for、while等控制流语句,用于实现条件判断和循环控制。
Matlab
% if-else语句
x = 10;
if x > 5
disp('x is greater than 5');
else
disp('x is not greater than 5');
end
% for循环
for i = 1:5
disp(['Number ', num2str(i)]);
end
% while循环
count = 0;
while count < 5
disp(['Count is ', num2str(count)]);
count = count + 1;
end
4. 函数定义与调用
MATLAB中的函数用于封装可重复使用的代码块。
Matlab
function y = myFunction(x)
y = x^2;
end
% 调用函数
result = myFunction(5);
disp(['Result is ', num2str(result)]);
MATLAB数据类型
MATLAB支持多种数据类型,包括数值类型、逻辑类型、字符类型、结构体、元胞数组等,这些数据类型都以数组或矩阵的形式存在。
1. 数值类型
MATLAB中的数值类型包括整数、浮点数和复数。
- 整数:分为有符号和无符号整数,包括8位、16位、32位和64位等不同长度。
- 浮点数 :分为单精度(
single
)和双精度(double
,MATLAB默认)。单精度浮点数使用4字节存储,双精度浮点数使用8字节存储。 - 复数 :由实部和虚部组成,MATLAB中使用
i
或j
作为虚数单位。
2. 逻辑类型
MATLAB中的逻辑类型用于表示真(true
)和假(false
),在数值计算中分别用1和0表示。
Matlab
a = 5 > 3; % 结果为true(即1)
b = 5 < 3; % 结果为false(即0)
3. 字符类型
MATLAB中的字符类型用于表示文本字符串,字符串用单引号括起来。MATLAB还提供了丰富的字符串处理函数。
Matlab
str = 'Hello, MATLAB!';
disp(str);
4. 结构体
结构体(struct
)是一种复合数据类型,允许将不同类型的数据组合成一个单一的数据结构。结构体中的每个字段都可以是不同类型的数据。
Matlab
student.name = 'John Doe';
student.age = 20;
student.grade = [90, 85, 92];
% 访问结构体字段
disp(['Name: ', student.name]);
5. 元胞数组
元胞数组(cell
)是一种特殊的数据类型,用于存储不同类型、不同大小的数组或数据。元胞数组的每个元素都可以是另一个数组或任意类型的数据。
Matlab
C = {'Hello', [1, 2, 3; 4, 5, 6], 3.14};
% 访问元胞数组元素
disp(C{1}); % 输出Hello
disp(C{2}); % 输出1x3的矩阵
disp(C{3}); % 输出3.14