MATLAB基础知识笔记


一、基础

  1. -clc :清除命令窗口中所有的命令
  2. -clear all:清楚工作区中的所有变量
  3. 注释:%
  4. -whos:可以在命令窗口查看所有详细属性信息
  5. 快速找到函数使用方法:在命令窗口输入:help **
    例如:help sin
  6. 中括号[]:用来存储矩阵和向量;
    大括号{}:用于单元数组的分配或引用
    小括号():用于引用数组元素

二、MATLAB变量命名规则

  • 变量名区分大小写
  • 变量名以字母开头 ,可以由字母、数字和下划线组成,但不可以使用标点
  • 变量名长度不超过63位
  • 变量名应该简洁明了,看名知其意

三、MATLAB数据类型

数字

有符号整型:int
无符号整型:uint
单精度浮点型:single
双精度浮点型(默认情况下)
逻辑性:true or false

数值转换为逻辑值:只有0才能转换为逻辑假,其他值都为真

a=45
alogical=logical(a) %logical(*):将*转换成逻辑值

字符与字符串

matlab中不区分字符和字符串。
1个字符=两个字节。

zifu = 'a'    
abs(zifu)            %转换为ASCI
char(65)             %转换为字母
zhuan = num2str(65)  %将数字转换为字符串

str = 'i am xxx'     %求字符串长度
length(str)

矩阵

A = [1 2 3; 4 5 6; 7 8 9]   %定义矩阵
B = A'                      %转置A矩阵
C = A(:)                    %变成一列
D = inv(A)                  %A的逆矩阵
A * D                       %两矩阵相乘

元胞数组

A = cell(1, 6)       %表示定义一个一行六列的元胞数组A
A{2} = eye(3)
A{5} = magic(5)       %魔方
B = A{5}
B = A{2}

运行结果:
第一行执行
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述


结构体

books = struct('name',{{'dashen','daxian'}},'price',[30 40]) %定义
books.name
books.name(1)
books.name{1}

运行结果:
在这里插入图片描述


四、数据类型的强制转换以及查看数值范围

  1. 强制转换
    在matlab中,数值默认类型为双精度浮点型。
a = 66 
b = int8(a)      %双精度浮点型强制转换为整型
c = 'xuexi'
d = int16(c)     %字符串型强制转换为int型
e = 14.89
f = single(e)    %双精度强制转换为单精度
  1. 查看数值范围
singlew=[realmin('single') realmax('single')] %查看单精度的范围
doublew=[realmin('double') realmax('double')] %查看双精度的范围
  1. 修改数据显示的格式
    matlab默认是以format short所显示数据的,即只显示小数点的后四位。
a = 56.987537283397789123
format short
a
format long 
a
format long e
a
format short e
a
format bank
a
format short %回到系统默认模式


五、取整函数

  1. round函数:最近取整数,0.5为临界条件
a=round(8.5)  %结果:9
b=round(-6.5) %结果:-7
c=round(-6.4) %结果:-6
  1. fix函数:向0取整
d=fix(-1.6)  %结果:-1
e=fix(-1.5)  %结果:-1
  1. floor函数:小于或者等于该数的接近整数
f=floor(2.7) %结果:2
g=floor(-2.4) %结果:-3
  1. ceil函数:大于或者等于该数的接近整数
h=ceil(4.2)  %结果:5
i=ceil(-4.4) %结果:-4

六、复试的使用

fu=3+4i
real1=real(fu)   %求复数的实部
imag1=imag(fu)   %求复数的虚部
abs1=abs(fu)     %求复数的模
angle1=angle(fu) %求复数的角度
gonge=conj(fu)   %求复数的共轭复数

七、函数句柄

例1:

f1=@cos                    %调用f1就相当于调用cos函数
t=0:pi/4:pi
f1(t)

运行结果:
在这里插入图片描述
例2:

f1=@char                     %函数句柄
s1=func2str(f1)              %将函数句柄转换成字符串
f2=str2func(s1)              %将字符串转换成函数句柄
functions(f1)                %返回包含函数信息的结构体变量
isa(f1,'function_handle')    %判断是否是函数句柄
isequal(f1,f2)               %检测两个函数句柄是否为同一函数

八、单元数组

  1. 单元数组的一般建立方法
c={'dd','dx';[5 4 7 8 3],7}         %两行两列,每个元素的类型都可以不一样
c{1,1}
c{2,1}
c{2,2}=[]                           %赋空

运行结果:
在这里插入图片描述

  1. 使用cell()函数建立单元数组
c=cell(3,3)              %3*3的单元数组,默认为空
c{1,1}=[1:3;3:5]         %:默认间距是1
c{2,2}='dd'

  1. 使用函数celldisp()显示单元数组
celldisp(c)               %单独显示单元数组的元素
celldisp(c,'dd')          %改变一个名称显示
  1. 图形化显示单元数组
clear all;
c={'dd','dx';[1:6],77}
figure;
out=cellplot(c,'legend')          %图形化显示 
  1. 单元数组的扩张与缩减
c={'dd','dx';[1:6;2:7],7}  %两行两列的单元数组
c{2,4}=3                   %单元数组的扩充,扩充为两行四列,其中第二行第四列为3
c(1,:)                     %第一行元素
c(:,3)=[]                  %通过对整列复制为空就可以删除第三行
d={'dd','ds';[],44}
e=[c,d]                    %单元数组的合并
e(2,:)=[]                  %通过对整行复制为空就可以删除第二行
  1. 将矩阵转换为单元数组
a=[4 6 8;6 6 7]
c=num2cell(a)              %将矩阵转换成单元数组
iscell(a)                  %判断是否为单元数组
iscell(c)

  1. 将单元数组转换成结构体变量
clear all;
c={'dd',170,20}
fileds={'name','shengg','salary'}  %结构体变量的成员
s=cell2struct(c,fileds,2)          %将单元数组转换成结构体变量


九、结构体

  1. 创建结构体变量
s1=struct('fengge',{'big,','little'},'yanse',{'blue'},'shuju',{[8 8 9;7 6 5] [1:9]})
diyi=s1(1)                %第一个成员值
dier=s1(2)

  1. 删除结构体成员变量
shan2=rmfield(s1,'yanse')
shan2and3=rmfield(s1,{'yanse','shuju'})
  1. 判断是否为结构体变量,是否为结构体变量成员
s=struct('hehe',1,'haha',2)
f1=isstruct(s)                           %结果:1
f2=isfield(s,'hehe')                     %结果:1
f3=isfield(s,'hee')                      %结果:0
f4=isfield(s,{'hehe','pipi','haha'})     %结果:1 0 1
  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值