MATLAB 基础知识
-
数字函数调用格式:函数名(函数自变量值)
-
clear:清除之前所有的数据
-
三角函数中有以弧度为单位和以角度为单位
- 弧度:sin(pi/2)
- 角度:sind(90) ——d代表角度单位
-
abs函数可求实数的绝对值、复数的模、字符串的ASCII码值
- 如:abs(-4)—— 4;abs(3+4i)—— 5;abs(‘a’)—— 97
-
用于取整的函数有:fix、floor、ceil、round
- round:四舍五入
- ceil:向上取整
- floor:向下取整
- fix:取靠近0的那个整数(如:fix(-3.2)—— -3)
-
取余函数:rem(原数,取余值)
- 如:m=345;m1=rem(m,10)—— 5
-
判断n是否为素数的函数 isprime(n),n是素数返回1,否则返回0
-
变量名只能以字母开头,变量名区分大小写,标准函数名及命令必须小写
-
赋值两种格式:
- 变量=表达式
- 表达式 (值被赋给了 matlab 的预定义变量 ans)
注意:赋值最后若是加分号(;)则只是赋值,不会再显示出来
-
预定义变量:
- ans 是默认赋值变量
- i 和 j 是代表虚数单位
- pi 代表圆周率
- NaN 代表非数
-
变量的管理:
- 内存变量的删除和修改:在工作区右键操作需要修改和删除的变量
- who 和 whos命令:
- 内存变量文件:
- save命令:创建内存变量文件 —— save mydata x y
- load命令:装入内存变量文件 —— load mydata
- 内存变量的删除和修改:在工作区右键操作需要修改和删除的变量
-
矩阵的建立:
- 同行逗号,不同行分号隔开
- 利用已建好的矩阵建立更大的矩阵
- 同行逗号,不同行分号隔开
-
冒号表达式:初始值:步长:终止值 (注意:步长为1时可以省略不写)
-
linspace 函数:linspace(第一个元素,第二个元素,元素总数)
-
结构矩阵:结构矩阵元素 . 成员名=表达式
-
单元矩阵:建立单元矩阵和一般矩阵相似,只是单元矩阵元素用大括号括起来就行了
-
矩阵元素的引用方式:
- 通过下标来引用矩阵的元素
- 通过序号来引用(
序号与下标对应:以m×n的矩阵a为例,a( i, j ) 的序号为 ( j-1 )×m+i ,矩阵序号与下标可以利用 sub2ind 和 ind2sub函数 相互转化
) - 利用冒号表达式获得子矩阵
- a(i,:) —— 第 i 行全部的元素
- a(:,j) —— 第 j 列全部的元素
- a(end,:) —— 最后一行所有元素
- a(i:i+m,k:k+m) —— 第
i~i+m
行内且在第k~k+m
列中的所有元素 - a(i:i+m,I) —— 第
i~i+m
行的全部元素
- 通过下标来引用矩阵的元素
-
利用空矩阵删除矩阵元素:a=[];
-
改变矩阵的形状
- reshape(a,m,n):在矩阵总元素保持不变的前提下,将矩阵a重新排成m×n的二维矩阵
- a( : ):将矩阵a的每一列元素堆叠起来,成为一个列向量。
- reshape(a,m,n):在矩阵总元素保持不变的前提下,将矩阵a重新排成m×n的二维矩阵
-
在matlab中,字符串是用单括号括起来的字符序列
-
若字符串中的字符含有单引号,则该单引号字符要用两个单引号来表示
-
建立多行字符串,形成字符串矩阵(不够用空格隔开)
-
字符串的操作
- 字符串的执行:eval(s)
- 字符串与数值之间的转换
- abs 和 double 函数都可以用来获取字符串矩阵所对应的ASCII码数值矩阵
- char 函数可以把ASCII码矩阵转换为字符串矩阵
- 字符串的比较(依次比较ASCII码值)
- 判断字符串是否相等:
- strcmp(s1,s2):比较两个字符串是否相等
- strncmp(s1,s2,n):比较两个字符串前n位是否相等
- strcmpi(s1,s2):忽略大小写比较两个字符串是否相等
- strncmpi(s1,s2,n):忽略大小写比较两个字符串前n位是否相等
- 字符串的查找与替换:
- findstr(s1,s2):返回短字符串在长字符串中的开始位置
- strrep(s1,s2,s3):将字符串s1中所有的子字符串s2替换为字符串s3
- 字符串的执行:eval(s)