MATLAB —— 基础语法
目录
MATLAB —— 基础语法
一、基础语法
1、常用的运算符
2、常用特殊变量和常数
3、变量
4、向量
5、矩阵
6、帮助手册
二、基础命令(与Linux和DOS命令类似)
1、会话管理命令
2、系统命令
3、输入输出命令
4、向量,矩阵,数组命令(重要)
4、图形命令
三、数据类型转换和判断
四、判断语句
五、循环语句
MATLAB用处:处理矩阵和数组;2D/3D绘图;线性代数;代数方程;统计;数据分析;微分积分方程;曲线拟合等;
一、基础语法
1、常用的运算符
| 运算符 | 说明 | 
| = | 赋值 | 
| + | 加法 | 
| - | 减法 | 
| * | 标量和矩阵乘法 | 
| .* | 阵列乘法 | 
| ^ | 标量和矩阵求幂 | 
| .^ | 阵列求幂 | 
| \ | 左除法 | 
| / | 右除法 | 
| .\ | 阵列左除法 | 
| ./ | 阵列右除法 | 
| : | 冒号; 生成规则间隔的元素,并表示整个行或列 | 
| () | 函数参数和数组索引; 覆盖优先级 | 
| [] | 阵列元素 | 
| . | 
 | 
| … | 行连续运算符 | 
| , | 分隔一行中的语句和元素 | 
| ; | 分隔列并抑制输出显示 | 
| % | 注释 | 
| ’ | 矩阵转置 | 
| .’ | 数组转置 | 
| _ | 引用符号和转置 | 
| ._ | 非共轭转置 | 
| 
 | 
 | 
| < | 小于 | 
| > | 大于 | 
| == | 等于 | 
| <= | 小于等于 | 
| >= | 大于等于 | 
| ~= | 不等于 | 
| 
 | 
 | 
| & | 按位与 | 
| | | 按位或 | 
| ^ | 按位异或 | 
| && | 逻辑与 | 
| || | 逻辑或 | 
| 
 | 
 | 
| 
 | 
 | 
| 
 | 
 | 
2、常用特殊变量和常数
| 特殊变量和常数 | 说明 | 
| ans | 命令行应答 | 
| eps | 浮点精度 | 
| i,j | 虚部单位 | 
| Inf | 无穷 | 
| NaN | 未定义的数值结果(非数字) | 
| pi | π | 
| computer | 计算机类型的信息 | 
3、变量
变量名称由一个字母组成,后跟任意数字的字母,数字或下划线。区分大小写。每个变量都是数组或者矩阵(向量相当于一维数组,矩阵相当于二维数组)。不能与关键字相同(iskeyword命令可以查看关键字)。
4、向量
创建行向量:a = [1, 2, 3, 4, 5]; %使用空格或者逗号分隔
创建列向量:a = [1; 2; 3; 4; 5]; %使用;分隔列
5、矩阵
将每行作为一系列空格或逗号分隔的元素输入矩阵,并以分号分隔一行。
a = [1, 2, 3; 4, 5, 6; 7, 8, 9];
6、帮助手册
help + xxx(xxx可以是命令或者函数等)
lookfor + xxx
doc + xxx
二、基础命令(与Linux和DOS命令类似)
只列出功能,具体的使用方法通过help xxx。
1、会话管理命令
| 命令 | 说明 | 
| clc | 清除命令窗口 | 
| clear | 从内存删除变量 | 
| exist | 检查变量或者文件是否存在 | 
| help | 搜索帮助主题 | 
| lookfor | 搜索帮助关键字条目 | 
| quit | 停止matlab | 
| who | 列出当前变量 | 
| whos | 列出变量详细信息 | 
| global | 声明变量为全局 | 
2、系统命令
| 命令 | 说明 | 
| cd | 更改工作目录 | 
| dir | 列出当前目录下的所有文件 | 
| pwd | 显示当前目录 | 
| type | 显示文件内容 | 
| what | 列出当前目录下所有的matlab文件 | 
| date | 当前日期 | 
| delete | 删除文件 | 
| diary | 打开/关闭日记文件记录 | 
| load | 从文件加载到工作区 | 
| path | 显示搜索路径 | 
| wklread | 读取.wkl电子文件表格 | 
3、输入输出命令
| 命令 | 说明 | 
| disp | 显示数组或字符串内容 | 
| ; | 禁止打印显示 | 
| fcanf | 从文件读取格式化数据 %s:格式化为字符串 %d:格式化为整数值 %f:格式化为浮点数 %e:格式化为科学计数法 %g:格式最紧凑形式 \t:插入制表符 \n:插入换行 | 
| fprintf | 对屏幕或文件格式化写入 | 
| input | 提示并等待输入 | 
| format | 控制屏幕显示格式 | 
4、向量,矩阵,数组命令(重要)
| 命令 | 说明 | 
| cat | 链接数组 | 
| length | 计算元素数量 | 
| linspace | 创建规则间隔的向量 | 
| logspace | 创建对数间隔向量 | 
| find | 查找非零元素的索引 | 
| max | 最大值 | 
| min | 最小值 | 
| reshape | 改变大小 | 
| size | 计算数组大小 | 
| sort | 递增或递减排序 | 
| sum | 对每列求和 | 
| eye | 创建单位矩阵 | 
| ones | 创建数组 | 
| zeros | 创建全0数组 | 
| cross | 计算矩阵交叉积 | 
| dot | 计算矩阵点积 | 
| det | 计算数组行列式 | 
| inv | 计算矩阵的倒数 | 
| pinv | 计算矩阵的伪逆 | 
| rank | 计算矩阵的秩 | 
| rref | 计算简化行阶梯形式 | 
| cell | 创建单元格数组 | 
| celldisp | 显示单元格数组 | 
| cellplot | 显示单元格阵列图形 | 
| num2cell | 数组转换成单元格数组 | 
| deal | 匹配输入和输出列表 | 
| iscell | 识别单元格数组 | 
4、图形命令
| 命令 | 说明 | 
| plot | 生成xy坐标图 | 
| fplot | 智能绘图 | 
| subplot | 子窗口中创建图 | 
| axis | 设置轴限制 | 
| grid | 显示网格 | 
|  | 打印或绘图到文件 | 
| title | 图形标题 | 
| xlabel | x文本标签 | 
| ylabel | y文本标签 | 
| axes | 创建轴对象 | 
| close | 关闭当前坐标图 | 
| close all | 关闭所有坐标图 | 
| figure | 打开一个新的图形 | 
| gtext | 通过鼠标启用标签放置 | 
| hold | 冻结当前坐标图 | 
| legend | 通过鼠标图例位置 | 
| refresh | 重新绘制图形 | 
| set | 指定对象的属性 | 
| text | 放置字符串 | 
| bar | 创建条形图 | 
| loglog | 创建日志图 | 
| polar | 创建极坐标图 | 
| stairs | 创建梯形图 | 
| stem | 创建茎图 | 
| semilogy | 创建半标记图(对数横坐标) | 
| semilogy | 创建半标记图(对数纵坐标) | 
三、数据类型转换和判断
| 数据类型 | 说明 | 
| char | 字符数据(字符串作为字符向量存储) | 
| int8 | 8位有符号整数 a = 123.5; b = int8_t(a); | 
| int16 | 16位有符号整数 | 
| uint16 | 16位无符号整数 | 
| int32 | 32位有符号整数 | 
| uint32 | 32位无符号整数 | 
| int64 | 64位有符号整数 | 
| uint64 | 64位无符号整数 | 
| single | 单精度 | 
| double | 双精度 | 
| logical | 逻辑值1或0 | 
| 结构体struct | C型结构体 | 
| int2str | 整数转换成字符串 | 
| mat2str | 矩阵转换成字符串 | 
| num2str | 数字转换成字符串 | 
| str2double | 字符串转换成双精度 | 
| str2num | 字符串转换成数字 | 
| 
 | 
 | 
| is | 状态检测 | 
| iscell | 确定输入是单元数组 | 
| iscellstr | 确定输入是字符串的单元格数组 | 
| isfloat | 确定输入是否为浮点数组 | 
| isnumeric | 确定输入是否是数字数组 | 
| isinteger | 确定输入是否为整数数组 | 
| islogical | 确定输入是否为逻辑数组 | 
| isreal | 检查输入是否为实数数组 | 
| isstr | 确定输入是否是字符数组 | 
| isscalar | 确定输入是否为标量 | 
| isstruct | 确定输入是否是结构数组 | 
| isvector | 确定输入是否为向量 | 
| validateattributes | 检查数组的有效性 | 
四、判断语句
| 语句 | 说明 | 
| if…end | 
 | 
| if…else…end | 
 | 
| if…else if…else…end | 
 | 
| switch | switch(a) case 1 … 
 otherwise … end | 
五、循环语句
| 语句 | 说明 | 
| for…end | 值格式 initval:endval initval:step:endval valArray | 
| while…end | 
 | 
| 
 | 
 | 
break:终止循环
continue:跳出当前循环,继续下一次循环。