目录

前言

一、matlab系统环境

1.matlab的界面

换行方式

2.设置当前文件夹

cd函数怎么建立

​编辑 3.工具区窗口

4.简单的赋值应用

5. matlab的搜索路径

如何设置文件搜索路径

思考:

二、matlab数值数据

1.数值数据类型的分类

2.数值数据输出格式

3.常用数学函数

(1)函数的调用格式为:

(2)常用函数的应用

(3)函数应用举例

三.变量及其操作

1.变量与赋值语句

2.赋值语句

3.预定义变量

4.变量的管理

(1)内存变量的删除与修改

(2)内存变量文件

四. matlab矩阵的表示

1.矩阵的建立

2.冒号表达式

3.结构矩阵和单元矩阵

五.矩阵元素的引用

1.矩阵元素的引用方式

(1)通过下标来引用矩阵的元素

(2)通过序号来引用

(3)利用逻辑符号来引用

六.MATLAB基本运算

1.算术运算

2.关系运算

3.逻辑运算

七.字符串处理

1.字符串的表示

2.字符串的操作

(1)字符串的执行

(2)字符串与数值之间的转换

(3)字符串的比较

(4)字符串的查找与替换

总结


前言

matlab第一节:基础知识

一、matlab系统环境

1.matlab的界面

换行方式

2.设置当前文件夹

cd函数怎么建立

 3.工具区窗口

4.简单的赋值应用

clear:清屏。

format的介绍

5. matlab的搜索路径

变量——>内部函数——>程序文件——>当前文件夹下的程序文件——>文件搜索路径下文件夹的程序文件

如果定义变量时,请不要使用已有的特定函数名。

如何设置文件搜索路径

1.用path命令设置文件搜索路径。例如:

>>path(path,'e:\mat.work')

2.用对话框设置文件搜索路径。

clc:清除所有命令。

help elfun:查找一些简易的函数

将光标放置在不认识的函数上按下F1键可以查找该函数的含义

思考:

(1)如果在当前文件夹和搜索路径文件夹下建立了一个同名的M文件,那么在命令行窗口输入文件名时,执行哪个文件?

程序文件搜索顺序现在当前文件夹中搜索再在文件搜索路径中查找

(2)如果用户建立的文件即没有保存在文件夹下,也没有保存在文件搜索路径中,那么在命令行窗口输入文件名时,会出现什么信息?

出现错误信息

二、matlab数值数据

1.数值数据类型的分类

1.整型:

(1)无符号:8位(00000000~11111111)

(2)带符号:8位(10000000~01111111)

uint8函数将数值数据转换为无符号的8位整数,int8函数将数值数据转换为带符号8位整数

>>x=int8(129)
x=127  %%带符号的最大为127,所以转换时只能转成127
>>x=uint8(129)
x=129  %%无符号的最大为255,所以转换后仍为129

2.浮点型:

(1)单精度:四个字节

(2)双精度:八个字节(精度更高)(数值数据默认为双精度)

使用single,将其他类型的数转换为单精度。

使用double,转换为双精度

>>class(4)
ans=
double   %%调用class函数
>>class(single(4))
ans=
single   %%调用single函数

3.复数型:

复数类型包括实部与虚部两个部分,实部和虚部默认为双精度型,虚部单位用i或j表示

>>6+5i
ans=6.0000+5.0000i
>>6+5j
ans=6.0000+5.0000i

使用real函数求实部,用imag函数求虚部

2.数值数据输出格式

format命令的格式:format格式符

>>format long
>>50/3
ans=16.666666666666668
>>format
>>50/3
ans=16.6667   %%format只影响数据输出格式不影响其定义

3.常用数学函数

(1)函数的调用格式为:

函数名(函数自变量的值)

函数的自变量规定为矩阵变量,当然也可以是标量,标量本身为矩阵的一种特例。

函数在运算时是将函数逐项作用与矩阵的每个元素上,所以最后运算的结果为一个与自变量同型的矩阵

>>A=[4,2;3,6]
A=4  23  6  %%创建矩阵A 2*2
>>B=exp(A)
B=54.5982   7.389120.0855 403.4288    %%调用exp函数,求自然指数B中数据均为A求自然指数所对应

(2)常用函数的应用

1.三角函数有以弧度为单位的函数和以角度为单位的函数,如果是以角度为单位的函数就在函数名后加上"d",以示区别。

>>sin(pi/2)
ans=1
>>sind(900
ans=1

2.abs函数可以求实数的绝对值,复数的模,字符串的ASCII值

>>abs(-4)
ans=4
>>abs(3+4i)
ans=5
>>abs('a')
ans=97

3.取整函数

round函数按照四舍五入规则取整

ceil函数为向上取整,取大于等于这个数的第一个整数

floor函数向下取整,取小于等于这个数的第一个整数

fix函数是固定取靠近0的数,舍去小数取整

4.字符长度

intmin(int8)=-128 :int8的最小范围为-128

intmax(int8)=127 : int8的最大范围为127

realmax:最大正浮点数(仅用于double,single)

realmin:最小

(3)函数应用举例

分别求一个三位正整数的个,十,百位

>>m=345
>>m1=rem(m,10)  %%相当于a%b
m1=5
>>m2=rem(fix(m/10),10)   %%fix函数取靠近0的整数
m2=4
>>m3=fix(m/100)
m3=3

求【1,100】所有素数

MATLB提供了判断n是否为素数的函数isprime(n),当n为素数时返回1,否则返回0.

>>x=1:100;   %%生成1到100间所有整数组成的向量x
>>k=isprime(x);   %%调用isprime函数
>>k1=find(k);   %%调用find函数(找出函数中非0数)
>>p=x(k1)  %%输出全部素数
p=1至15列2  3  5  7  11  13  17  19  23  29  31  37  41  43  4716至25列53  59  61  67  71  73  79  83  89  97

三.变量及其操作

1.变量与赋值语句

变量本质上为内存单元的一个抽象

在matlab中,变量名是以字母开头,后接字母,数字或下划线的字符序列,最多63个字符。

注意:

(1)变量名区分大小写。

(2)标准函数名以及命令必须用小写字母

2.赋值语句

(1)变量=表达式

(2)表达式

3.预定义变量

由系统本身定义的变量

ans是默认赋值变量

i和j代表虚数单位

pi代表圆周率

NaN代表非数(想要裁掉的部分,将其的坐标数据设定为NaN)

 inf:无穷大的缩写

在matlab中nan在不同情况下不同。例:(d)

~:1.代表非  2.代表忽略输出数据

对于(f)中'~'说明取反

4.变量的管理

(1)内存变量的删除与修改

a.在工作区按右键进行修改

b. who命令与whos命令

 使用这两个命令,可以显示工作区中的内容

(2)内存变量文件

用于保存matlab工作区变量的文件叫做内存变量文件,其扩展名为.mat,也叫MAT文件

save命令:创建内存变量文件

load命令:装入内存变量文件

>>save mydata a x  %%把a x存入mydata文件中,下次就可以使用
>>load mydata    %%将mydata文件中的内容存入此次工程中

四. matlab矩阵的表示

1.矩阵的建立

(1)利用直接输入法建立矩阵:将矩阵的元素用中括号括起来,按矩阵行的顺序输入各元素,同一行的个元素之间用逗号或空格分隔,不同行的元素之间用分号间隔。

>>A=[1,2,3;4,5,6;7,8,9]

A=

1   2   3

4   5   6

(2)利用已建立好的矩阵建立更大的矩阵:一个大矩阵可以由已经建立好的小矩阵拼接而成。

>>A=[1,2,3;4,5,6;7,8,9];

>>B=[-1,-2,-3;-4,-5,-6;-7,-8,-9];

>>C=[A,B;B,A]

可以用实部矩阵与虚部矩阵构成复数矩阵。

>>B=[1,2,3;4,5,6];

>>C=[6,7,8;9,10,11];

>>A=B+C*i

A=

1.0000+6.0000i   2.0000+7.0000i ......

向量是矩阵特殊类型

2.冒号表达式

(1)格式

(2)linspace函数

3.结构矩阵和单元矩阵

(1)结构矩阵

格式为:

结构矩阵元素.成员名=表达式

>>a(1).x1=10;a(1).x2='liu';a(1).x3=[11,21;34,78];

%%给矩阵a1的第一二三号元素分别赋值

(2)单元矩阵

建立单元矩阵和一般矩阵相似,直接输入就可以了,只是单元矩阵用大括号括起来。

>>b={10,'liu',[11,21;34,78];12,'wang',[34,191;27,578];...

14,'cai',[13,890;67,231]}

五.矩阵元素的引用

1.矩阵元素的引用方式

(1)通过下标来引用矩阵的元素

A[3,2]表示的是A矩阵第3行第2列的元素。

>>A(3,2)=200  %%仅改变了该处元素的量

例子:%%不足时,自动补0,使矩阵完整,如例子

(2)通过序号来引用

序号与下标一一对应的,以m*m矩阵A为例,矩阵元素A(i,j)的序号为(j-1)*m+i

矩阵元素的序号下标可以利用sub2ind和in2sub函数实现相互转换

sub2ind函数:将矩阵中指定元素的行,列下标转换成存储的序号。调用格式为:

D=sub2ind(S,I,J)

D:对应序号

S:行数和列数组成的向量

I:转换矩阵元素的行下标

J:转换矩阵元素的列下标

int2sub函数:将把矩阵元素的序号转换成对应的下标,其调用格式为:

[I,J]=ind2sub(S,D)

[I,J]:行下标

S:行数和列数组成的向量

D:序号

[3,3]:3行3列矩阵

1,3,5表示其所对应的下标(1,1) (3,1) (2,2)

利用冒号表达式获得子矩阵

end运算符:表示某一维末尾元素下标

利用空矩阵删除矩阵的元素

空矩阵指没有任何元素的矩阵

>>x=[]

x=

[]

x为空矩阵

改变矩阵的形状

reshape(A,m,n):在矩阵总元素保持不变的前提下,将矩阵重新排列成m*n的二维矩阵

注意:reshape函数只改变原矩阵的元素个数及其储存顺序

(3)利用逻辑符号来引用

>> veac = [1 2 3 4 7 8 9 5 6]veac =1     2     3     4     7     8     9     5     6>> v = [ 1 0 1 1 0 1 0 0 1 ]v =1     0     1     1     0     1     0     0     1>> veac(v)
数组索引必须为正整数或逻辑值。>> v = logical([ 1 0 1 1 0 1 0 0 1 ])v =1×9 logical 数组1   0   1   1   0   1   0   0   1>> veac(v)ans =1     3     4     8     6

注意正常输入的向量并非逻辑向量,而是double型的因此要将其转化为logical型才可以进行数组索引

六.MATLAB基本运算

1.算术运算

(1)基本算术运算

基本算术运算符:+,-,*,/(右除),\(左除)

MATLAB的算术运算是矩阵意义下进行的

单个数据的算术运算只是矩阵运算的特例

a.加减运算

两个矩阵同型,则运算时两矩阵的相应元素相加减。

若两个矩阵不同型,则MATLAB将给出错误信息。

b.乘法运算

矩阵A和B进行乘法运算,要求A的列与B的行一致,称A和B可乘,或A和B矩阵维数或大小相容

维数不同则错误

c.除法运算

在MATLAB中有:右除 '/' 和左除 ‘\’

若A矩阵是非奇异方阵,则A/B等效于B*inv(A),B\A等效于inv(A)*B.

对于矩阵来说,右除和左除表示两种不同的除数矩阵和被除数矩阵关系

b.乘方运算

一个矩阵的乘方运算可以表示为A^x,要求A为方阵,x为变量。

(2)点运算

点运算符: .* ; ,/ ; ,\ ; ,^

两个矩阵进行相关运算是指他们对应元素进行相关运算,要求两个矩阵同型

2.关系运算

关系运算符:<,<=,>,>=,==,~=(不等于)

(1)当两个比较量是标量时,直接比较两个数的大小,若不成立则输出0,反之输出1。

(2)当参与比较的量时两个同型的矩阵时,比较是对两个矩阵相同位置的元素按标量关系运算规则逐个进行,最终的关系运算的结果是一个与原矩阵同型的矩阵,它由0和1构成。

(3)当参与比较的是标量和矩阵时,则把矩阵的每一个元素按标量关系运算规则逐个比较,最终的关系运算的结果是一个与原矩阵同型的矩阵,由0或1构成

rem函数与mod函数

3.逻辑运算

逻辑运算符:&   |   ~(单目运算)

算术运算>逻辑运算

单目运算(运算时仅需要一个变量)>双目运算(运算时需要两个变量)

七.字符串处理

1.字符串的表示

在matlab中,字符串使用单引号括起来的字符序列

>> xm='Njtech University'
>> xm(1 , 3)   %取字符串1到3的字符
ans =
Njt

若字符串中的字符含有单引号,则该单引号字符要用两个单引号表示。

>> 'I''m a teacher.'
ans =
I'm a teacher

建立多行字符串,形成字符串矩阵。

>> ch=['abcdef';'123456']; %两行的矩阵
>> ch(2,3)
ans=3

例子

建立一个字符串向量,然后对该向量做如下处理:

1)取第1~5个字符组成的子字符串。

2)取字符串倒过来重新排列。

3)将字符串中的小写字母变成相应的大写字母,其余字符不变。

4)统计字符串中小写字母个数

>>ch='ABc123d4e56Fg9';
>>subch=ch(1:5)    %取出1~5位的字符
subch=
ABc12
>>revch=ch(end:-1:1)   %输出从最后一位开始,以-1为步长移动,到第一位结束
revch=
9gF65e4d321cBA
>>k=find(ch>='a'&ch<='z')  %查找出小写字母
k=3 7 9 13
>>ch(k)=ch(k)-('a'-'A')  %将小写字母加上32,通过ASCII改变该字母为大写
ch=ABC123D4E56FG9
>>length(k)
ans=4

2.字符串的操作

(1)字符串的执行

格式:eval(s)  s为字符串

>>t=pi;
>>m='[t,sint(t),cos(t)]';   %m为字符串
>>y=eval(m)
y=3.1416   0.0000   -1.0000

(2)字符串与数值之间的转换

1)abs和double函数都可以用来获取字符串矩阵所对应的ASCII码数值矩阵

2)char函数可以把ASCII码矩阵转换为字符串矩阵

>>s1='MATLAB';
>>a=abs(s1)
a=77 65 84 76 65 66
>> char(a+32)
ans=
matlab

(3)字符串的比较

字符串的比较有两种方式:利用关系运算符或字符串比较函数。

1) 关系运算符比较:两个字符串里的每个字符以此比较ASCII值的大小,比较的结果是一个数值向量,向量中的元素要不是1,要么是0.

>>'www0'>='W123'

ans=

1    1     1    0

2)字符串比较函数用于判断字符串是否相等,有四种比较方式,函数如下:

strcmp(s1, s2):用于比较字符串s1、s2是否相等,如果相等,返回结果1,否则返回0;

strncmp(s1, s2, n):用于比较字符串s1、s2前n个字符是否相等,如果相等,返回结果1,否则返回0;

strcmpi(s1, s2):在忽略字母大小写的前提下,比较字符串s1、s2是否相等,如果相等,返回结果1,否则返回0;

strncmpi(s1, s2, n):在忽略字母大小写的前提下,比较字符串s1、s2前n个字符是否相等,如果相等,返回结果1,否则返回0

s1 = 'matlab';
s2 = 'matlab';
strcmp(s1,s2)
ans=1
s3 = 'matlab';
s4 = 'mat';
strncmp(s3,s4,3)
ans=1
s5 = 'Matlab';
s6 = 'MATLAB';
strcmpi(s5,s6)
ans=1
strncmpi(s5,s6,1)
ans=1

(4)字符串的查找与替换

findstr(s1,s2):返回短字符串在长字符串中的开始位置。

strrep(s1,s2,s3):将字符串s1中的所有字符串s2替换为字符串s3

>>p=findstr('This is a test!','is')
p=3  6
>>p=findstr('is','This is a test!')  %%空格也算一个字符
p=3  6
>>result=strrep('This is a test!','test','class')
result=
This is a class!

总结

matlab基础知识的概数

matlab---基础知识相关推荐

  1. MATLAB学习笔记之matlab基础知识

    MATLAB基础知识 MATLAB系统环境 MATLAB操作界面组成 MATLAB主窗口 命令行窗口 当前文件夹窗口 工作区窗口 MATLAB的搜索路径 MATLAB数值数据 数值数据类型的分类 整型 ...

  2. MATLAB学习笔记2:MATLAB基础知识(下)

    阅读前请注意: 1. 该学习笔记是华中师范大学HelloWorld程序设计协会2021年寒假MATLAB培训的学习记录,是基于培训课堂内容的总结归纳.拓展阅读.博客内容由 @K2SO4钾 撰写.编辑, ...

  3. matlab中exp(liangx),Matlab基础知识

    <Matlab基础知识>由会员分享,可在线阅读,更多相关<Matlab基础知识(122页珍藏版)>请在人人文库网上搜索. 1.Lxy, China Jiliang Univer ...

  4. 专题一matlab基础知识

    这是matlab最基础的语法解释部分,后面将会陆续的更新有关matlab的学习知识 专题一matlab基础知识 数值数据类型的分类 整型 无符号整数:无符号8位整数.无符号16位整数.无符号32位整数 ...

  5. matlab 预设变量大小,新手必看MATLAB基础知识2:基本数据操作(其一):变量和赋值...

    大家好,今天小尼比继续来给大家讲解和MATLAB有关的知识,在<新手必看MATLAB基础知识1:MATLAB操作界面与MATLAB设置>中,有人评论留言,提出了"有点看不懂这些操 ...

  6. MATLAB教程(1) MATLAB 基础知识(1)

    第一部分:MATLAB显示桌面的基本布局 桌面基础知识- MATLAB & Simulink- MathWorks 中国 1.启动MATLAB后,桌面会显示默认布局,主要有以下三个部分: 当前 ...

  7. matlab 找到数组中第一个不连续点_1.基础知识(1) Matlab基础知识

    前言: 前两次文章有读者私信说Matlab初学,基础较差,本次分享一下Matlab的基础内容,熟练者可以跳过本文,后续的文章也会在文后加上一些基础内容分享. 关键字:Matlab.数组.函数.计算.绘 ...

  8. matlab 基础知识查漏

    基础知识查漏 矩阵运算基本命令 Ai=A(i,:); Aj=A(:,j); orth(A);%将非奇异矩阵A正交化 A([i,j],:)=A([j,i],:);%将A的第i行与第j行互换 rref(A ...

  9. 【MATLAB图解教程1】MATLAB基础知识

    ⭐️引言⭐️ 大家好哇!马上就要数学建模比赛了,这周Sonesang将为大家带来MATLAB基础教程,希望在准备数学建模的过程中,能够和大家一起分享学习过程!

  10. MATLAB教程(1) MATLAB 基础知识(4)

    第七部分:二.三维图 二维图和三维图- MATLAB & Simulink- MathWorks 中国 折线图 (1) 画图 x = 0:pi/1000:2*pi; y = sin(x); p ...

最新文章

  1. 观察者模式的经典应用(猫叫 烧开水)
  2. 找到那些氪金大佬,然后榨干他们丨AIの特殊技能
  3. matlab intergral,matlab學習:人臉識別之HOG(Histograms of Oriented Gradients)
  4. lambda的用法与实例(转载)
  5. mongodb mongoose 常用操作符号 整理
  6. [转载]虚拟机磁盘空间已满的发现和解决
  7. HDU 5996 dingyeye loves stone [阶梯Nim]
  8. Mysql学习总结(72)——MySQL 开发者开发,设计规范再总结
  9. 中子穿墙问题的MonteCarlo求解方法
  10. 简单的方法破解百度网盘上带密码的学习视频资源
  11. 军犬舆情每日热点:台湾海峡发生6.2级地震;泉州通报碳九泄漏事件处理结果
  12. 计算机应用基础的重点知识,《计算机应用基础知识》重点总结
  13. 一款极简的原生农历日期滚动选择器(小程序版本)体积小,速度快
  14. 神雕侠侣服务器维修时间,《神雕侠侣2》手游新服开服时间表 7月30日新服
  15. BCV和BEV是个什么鬼?
  16. [爆笑网文]如果男生女生一起过夜
  17. macbook matlab 键盘没作用,mac键盘(苹果电脑键盘功能介绍)
  18. 搜索实现 app 本地搜索效果,有历史记录的
  19. 到底什么是嵌入式?什么是单片机?究竟有何区别?
  20. 天正怎么批量填充柱子_天正建筑最常用的几十个快捷键

热门文章

  1. 百度跨平台AI推理加速引擎:Anakin
  2. 非线性优化库Ceres学习笔记7(鲁棒的曲线拟合)
  3. ESP8266-NodeMCU项目(三):ESP8266-NodeMCU+Blinker+红外模块(实现远程遥控空调)
  4. c语言中如何防止数组下标越界
  5. Python解放双手系列,用python自动追踪你的快递
  6. 异步电机无感MRAS-cc(三.推导及仿真)
  7. screen 下 xterm 保证256色
  8. 计算机原理肖杰辉,《这!就是街舞》下一季你期待哪位舞者能来?这三位舞者值得关注...
  9. 薪酬体系怎么设计?详解HR薪酬体系设计的方法、步骤与工具
  10. 不正经的python