MATLAB的数据与运算(一)
MATLAB的数据类型
1.变量与常量
在MATLAB中常量和变量是最基本的语言元素。其采用了传统的十进制表示,可以带负号或者小数点,如-3,-3.5等。
(1).MATLAB中提供一些内部常量,在这里可以理解为MATLAB的默认的预定义变量,下表给出了MATLAB中的内部常量
| 内部常量 | 描述 |
|---|---|
| ans | 默认变量名或者默认变量,即将没有指定输出变量的计算结果赋值给ans |
| eps | 机器零阈值,数值大小为2.2204e-16 |
| inf | 表示无穷大的计算结果 |
| nan | 非数值,通常表示不合法数值的值 |
| i或j | 虚数单位 |
| pi | 圆周率 |
| realmax(realmin) | 最大(小)正实数 |
| nargin(nargout) | 函数输入(输出)变量数目 |
| computer | 计算机类型 |
| version | MATLAB版本字符串 |

内部变量无需声明,直接调用即可。但是如果对内部常量进行赋值,则该常量会被我们新赋的值所覆盖。这种覆盖只是暂时的,使用clear命令清空或者重新启动MATLAB就可以恢复系统默认值。
(2).在MATLAB中定义的变量都以数组或者矩阵形式保存,MATLAB为我们提供了十多种数据类型,如 逻辑型,字符型,数值型,单元数组,结构数组等。下面对变量进行简单介绍:
变量命名规则:必须以字符开头,是字符与数字的任意组合,允许下划线,不能使用函数名和系统保留字,不能使用i,j,大小写字符是不同的。
几种常见的数据类型
| 类型 | 说明 |
|---|---|
| 逻辑型 | 只有0,1 |
| 字符型 | 使用时必须将待建的字符置于英文状态下的单引号中 |
| 数值型 | 分为单精度数值型数组和双精度数值型数组,使用format命令可以设置变量的格式 |
数值输出格式
| 函数 | 功能 | 示例 |
|---|---|---|
| format | 保证小数点后4位有效数字,最多不超过7位,对于大于1000的实数,用5位的有效数字的科学计数法表示 | 314.159被显示为314.1590 3141.59被显示为3.1416e+003 |
| format long | 15位数字表示 | 3.14159265358979 |
| format rat | 近似有理数表示 | 355/133 |
| format hex | 十六进制表示 | 400921fb54442d18 |
| format compact | 显示变量之间没有空行 | |
| format loose | 显示变量之间有空行 |
变量类型
| 变量类型 | 说明 |
|---|---|
| 局部变量 | 函数中定义的变量,当函数运行时,其变量保存在自己的工作区,一旦函数退出运行,内存不复存在 |
| 全局变量 | 几个函数共享的变量,定义全局变量需要使用global函数,在函数最前面定义,名字最好全部用大写且具有描述性 |
| 永久变量 | 类似于java中的Static变量,只能在M文件中定义和使用,只允许定义它的函数存取,定义永久变量,需要使用persistent语句 |
2.MATLAB的运算符号
运算符大致分为三种,算术运算符,比较运算符以及逻辑运算符
(1).算术运算符
除了我们所熟悉的算术四则运算,MATLAB中还包含幂,转置等运算,具有强大的矩阵运算功能。下表列出一些运算符,四则运算在这里不再说明。
| 运算符 | 说明 |
|---|---|
| .* | 点乘 |
| ^ | 算术乘方 |
| .^ | 点乘方 |
| \ | 算术左除 |
| .\ | 点左除 |
| / | 算术右除 |
| ./ | 点右除 |
(2).比较运算符
该运算符主要用来比较两个数值的大小,注意~=为不等于,==为等于,>=为大于等于。
(3).逻辑运算符
该运算符主要功能是判断参与比较的对象之间的某种逻辑关系。
| 运算符 | 函数 | 描述 |
|---|---|---|
| & | and | 与 |
| 一竖 | or | 或 |
| && | 如果符号两端表达式皆为真,则返回1 | |
| 两竖 | 如果符号两端表达式有一个为真,则返回1 | |
| ~ | not | 否,非 |
| ~ | xor | 元素相异返回1 |
| ~ | bitand | 二进制数字逻辑操作符,表示与,和 |
| ~ | bitor | 二进制数字逻辑操作符,表示或 |
| ~ | bitxor | 二进制数字逻辑操作符,相异数返回1 |

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
