MATLAB 常用数学函数和数组和字符串、元胞数组和结构体,MATLAB 编程,关系运算符和逻辑变量(二)

简介: MATLAB 常用数学函数和数组和字符串、元胞数组和结构体,MATLAB 编程,关系运算符和逻辑变量

字符串数组

这里先简单介绍字符串数组,字符串可以由单引号创建。字符串其实是元素为ASCII 码的字符数组,可以按照数组的操作对字符串的元素进行操作。

 

字符串可以有多行,但每一行需要有相同字符数。字符串连接,和数组连接操作相同。

如果两个数组具有相同的行数,两个数组可以水平方向连接。如果两个数组具有相同的列数,

两个数组可以垂直方向连接。

 

 

字符串、元胞数组和结构体

一、字符串操作和运算

字符串操作和运算

字符串操作

字符串相当于一个数组,每一个字符相当于数组中的一个元素,可以像操作数组一样对

字符串元素的操作。

字符串运算

字符串运算包括判断字符串是否相等,对字符进行比较,查找,替换等。

常用的字符串运算函数如下表。

函数名 作用
strcat 连接字符串
strcmp 字符串比较
findstr 字符串查找
strncmp 比较字符串前n 个字符
eval 将字符串作为命令执行

 

字符串与数值之间的转换

str2num, str2double 函数可以将字符串转换为数值。

num2str 函数将数值数组转换为表示数字的字符数组。

二、元胞数组

元胞数组是可以包含各种类型和大小的数据的数组。

创建

用{}运算符或cell 函数创建元胞数组。将元素用{}括起来,直接创建元胞数组,也可以利用cell 函数创建空元胞数组,再为数组元素逐个赋值。

 

 

 

操作

访问

访问元胞数组的内容,索引用花括号括起来。

用花括号进行访问,得到的是该单元的内容。

 

而用圆括号对元胞数组进行访问,表示的是该单元。

 

删除

将元胞数组元素删除,根据索引得到该元素,直接将该元素设置为空[]。

索引用圆括号括起来是该单元,索引用花括号括起来是该元素。

 

 

访问使用celldisp©显示元胞数组内容。

 

三结构体

三、结构体

结构体是带有可以包含各种类型和大小的数据的命名字段的数组。

结构体也可以将不同类型数据组合在一起,结构体与元胞数组的区别在于,结构体有名字,每个成员元素也有名字,通过元素的名字来访问元素。

创建

结构体可以通过直接输入结构体各元素的值创建,也可以通过struct 函数创建。

(1) 直接创建结构体

直接输入创建结构体,定义该结构体的名称,并使用圆点“.”将变量与结构体名连接。

定义一个名称为patient 的结构体变量,patient.name 为结构体第一个成员,patient.billing为结构体第二个成员,patient.test 为结构体第三个成员。

 

 

(2)使用struct 函数创建结构体

使用struct 函数定义结构体,s=struct(‘field1’,Value1,…,‘fieldN’,ValueN)同时定义多个字段,

field 为各成员名称,Value 为各成员变量的内容。Value 可以是任何类型的数组。

操作

(1)查看结构体的字段名称

使用fieldnames 函数结构体的字段名称。names = fieldnames(s);

(2)访问和更改成员变量

使用圆点访问和更改成员的值,即“结构体.成员名”的方式。

 

(3)添加成员变量

使用圆点加变量名称并赋值。

(4)删除成员变量使用rmfield 从结构体中删除成员变量。S=rmfield(S,’field’);

MATLAB 编程

编程为创建和编写脚本文件。

对于复杂问题需要使用脚本文件,将一组MATLAB 命令保存在脚本文件,文件名以.m为扩展名,运行脚本文件执行程序。

脚本文件是最简单的代码文件类型,脚本文件没有输出和输入。

创建和使用脚本文件

创建脚本文件可以点击主页选项卡上的新建脚本按钮或者使用edit 函数。

edit 函数会创建并打开一个文件,edit new_file_name 会创建(如果不存在相应文件)

并打开一个名为new_file_name 的文件。如果没有指定名称,将打开一个Untitled 的新文件。

创建和编辑脚本文件之后,保存生成.m 文件,运行脚本可以通过命令行键入脚本名称

并按回车键进行执行,或者在编辑器选项卡上点运行按钮。

 

脚本执行后,变量会保存在工作区。

 

脚本文件命名规则,必须以字母开头,可以包含数字和下划线字符,最多可以有31 个字符。脚本文件的名称不要与变量的名称相同,否则无法执行脚本文件。

可以使用exist 检查函数或者文件名是否存在。如果存在则返回1,不存在则返回0。

 

目录
相关文章
|
1月前
|
索引
matlab--------矩阵重构,重新排列的相关函数说明
matlab--------矩阵重构,重新排列的相关函数说明
45 0
matlab--------矩阵重构,重新排列的相关函数说明
|
1月前
|
机器学习/深度学习 算法 数据库
基于CNN卷积网络的MNIST手写数字识别matlab仿真,CNN编程实现不使用matlab工具箱
基于CNN卷积网络的MNIST手写数字识别matlab仿真,CNN编程实现不使用matlab工具箱
|
25天前
雷达模糊函数及MATLAB仿真(三)
雷达模糊函数及MATLAB仿真
15 0
|
25天前
雷达模糊函数及MATLAB仿真(一)
雷达模糊函数及MATLAB仿真
25 0
|
1月前
|
算法
【数学建模竞赛】Matlab逻辑规则,结构基础及函数
【数学建模竞赛】Matlab逻辑规则,结构基础及函数
26 0
|
2月前
|
机器学习/深度学习 算法
基于自适应支持向量机的matlab建模与仿真,不使用matlab的SVM工具箱函数
基于自适应支持向量机的matlab建模与仿真,不使用matlab的SVM工具箱函数
|
3月前
|
机器学习/深度学习 存储
【Matlab智能算法】极限学习机-遗传算法(ELM-GA)函数极值寻优——非线性函数求极值
【Matlab智能算法】极限学习机-遗传算法(ELM-GA)函数极值寻优——非线性函数求极值
|
3月前
|
机器学习/深度学习 存储
【Matlab智能算法】Elman神经网络-遗传算法(Elman-GA)函数极值寻优——非线性函数求极值
【Matlab智能算法】Elman神经网络-遗传算法(Elman-GA)函数极值寻优——非线性函数求极值
|
3月前
|
机器学习/深度学习 存储
【Matlab智能算法】RBF神经网络-遗传算法(RBF-GA)函数极值寻优——非线性函数求极值
【Matlab智能算法】RBF神经网络-遗传算法(RBF-GA)函数极值寻优——非线性函数求极值
|
3月前
|
机器学习/深度学习 存储 算法
【程序员必须掌握的算法】【Matlab智能算法】GRNN神经网络-遗传算法(GRNN-GA)函数极值寻优——非线性函数求极值
【程序员必须掌握的算法】【Matlab智能算法】GRNN神经网络-遗传算法(GRNN-GA)函数极值寻优——非线性函数求极值

热门文章

最新文章