资源预览内容
第1页 / 共61页
第2页 / 共61页
第3页 / 共61页
第4页 / 共61页
第5页 / 共61页
第6页 / 共61页
第7页 / 共61页
第8页 / 共61页
第9页 / 共61页
第10页 / 共61页
亲,该文档总共61页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
Matlab基础与应用 20170208Matlab基础与应用 20170208Matlab基础与应用郑中杰 实验教学部 2017年第2章 基本数据类型Matlab基础与应用 20170208Matlab基础与应用 20170208主要内容2.2 MATLAB数据类型2.3 向量及其运算2.4 矩阵及其运算2.1 变量Matlab基础与应用 20170208Matlab基础与应用 201702082.1 变量1. 变量的命名规则l 变量名必须以字母开头。所允许的最长变量名为63个字符。l 变量名允许使用的后续字符仅包括字母、数字或下划线。(如 my_2合法)l 变量名区分字母大小写。(如变量a与变量A不同)l MATLAB程序中保留的关键字不能用作变量名。(如for、 end、if、function等,可使用iskeyword查看)l MATLAB允许重新指定内置函数名作为变量名,但很危险。 (如sin=4,若要重置,clear sin)Matlab基础与应用 20170208Matlab基础与应用 20170208Matlab基础与应用 20170208Matlab基础与应用 201702082.1 变量2. 特殊变量是由系统预先自动定义的,当MATLAB启动时驻留 在内存中。Matlab基础与应用 20170208Matlab基础与应用 201702082.1 变量3.变量赋值变量名=表达式sin 与 sind 函数的区别?Matlab基础与应用 20170208Matlab基础与应用 20170208Matlab原理及应用案例教程变量管理1. 内存变量的显示与删除Who和whos这两个命令用于显示在MATLAB工作空间中驻留的变量名清 单。但whos在给出驻留变量名同时,还给出它们的维数、所占字节数以及变量 的类型。下面的例子说明了who和whos命令的区别。说明:clear命令用于删除 MATLAB工作空间中的变量。注 意,预定义变量不能被删除。Matlab基础与应用 20170208Matlab基础与应用 20170208Matlab原理及应用案例教程变量管理常用的还有一个class函数,该函数可以用来 获取变量或对象的类型,也可以用来创建用 户自定义类型。在本章中主要利用其获取变 量或者对象的功能。 a=2.3 class(a) ans = doubleMatlab基础与应用 20170208Matlab基础与应用 20170208Matlab原理及应用案例教程变量管理MATLAB工作空间窗口专门用于内存变量的管理,如图所示。在工作空间窗口中可以 显示所有内存变量的属性。当选中某些变量后,再单击工作空间窗口工具栏中Delete 按钮,就能删除这些变量。Matlab基础与应用 20170208Matlab基础与应用 20170208Matlab原理及应用案例教程变量管理当选中某些变量后,再单击Open Selection按钮,即可进入变量编辑器,如图所 示。通过变量编辑器可以直接观察变量中的具体元素,也可修改变量中的具体元 素。Matlab基础与应用 20170208Matlab基础与应用 20170208P21示例:例2.3 save mydata a b x load mydata2.1 变量4. 变量的清除、保存与载入save 文件名 变量名表 -append-asciiload 文件名 变量名表 -asciiwho / whos clearMatlab基础与应用 20170208Matlab基础与应用 201702082.2 MATLAB数据类型MATLAB的主要处理对象是矩阵和数组。MATLAB数据类型(数组)数值型数组 逻辑型数组 字符型数组 符号数组 元胞数组 结构数组其他类型整数浮点有符号无符号单精度双精度元胞数组和结构数组可以在同一数组中 存储不同类型的数据其他类型包括用户定义类型和Java类型Matlab基础与应用 20170208Matlab基础与应用 201702082.2 MATLAB数据类型不同类型的数据能表示的数据范围、占用的存储 空间等均不同。MATLAB 7.0默认将所有的数值都按 照双精度浮点数类型来存储和操作。数据类型表示存储空间/数据范围双精度double8字节 realmax(double) : 1.7977e+308 realmin(double) : 2.2251e-308单精度single4字节 realmax(single) : 3.4028e+038 realmin(single) : 1.1755e-0381.数值型-浮点数Matlab基础与应用 20170208Matlab基础与应用 201702082.2 MATLAB数据类型数据类型表示存储空间/数据范围有符号整数int8 int16 int32 int641字节 intmax(int8) : 127intmin(int8) : -128无符号整数uint8 uint16 uint32 uint641字节 intmax (uint8) : 255 intmin(uint8) : 0 复数默认存储类型是双精度,实部和虚部都需要存储,需要两倍的存储空间。 存储一个双精度的复数需要16字节,可存为单精度或整数类型。如int(5+3i)1.数值型-整数Matlab基础与应用 20170208Matlab基础与应用 20170208Matlab原理及应用案例教程(1) 在工作空间窗口中可以看到各变量在存储空间 中占用的字节数。 (2) 整数与浮点数相乘运算后其结果仍然是整数。 (3) 相同的整型数据之间的运算,结果为同类型的 整数。不同的整数型数据之间不能进行运算。整数类型说明Matlab基础与应用 20170208Matlab基础与应用 20170208Matlab原理及应用案例教程Matlab基础与应用 20170208Matlab基础与应用 20170208P26示例: (complex函数)例2.5 a=3 b=4 c=complex(a,b) %产生复数 c =3.0000 + 4.0000i r=real(c) %复数的实部 r = 3 m=imag(c) %复数的虚部 m =4 k=abs(c) %复数的模 k =5 t=angle(c)*180/pi %复数的相角用角度表示 t = 53.1301 cc=conj(c) %共轭复数 cc =3.0000 - 4.0000i2.2 MATLAB数据类型Matlab基础与应用 20170208Matlab基础与应用 20170208Matlab基础与应用 20170208Matlab基础与应用 201702082.2 MATLAB数据类型数据类型表示存储空间一个字符 a一个字符2字节一个字符串abc三个字符6字节2.字符型函数名功能举例abs(s) double(s)将字符串s转换为ASCII码值abs(ab3) : 97 98 51 double(ab3) : 97 98 51str2num(s)将字符串s转换为数值str2num(34 67) : 34 67num2str(n )将数值n转换为字符串num2str(34) : 34 setstr(n)将ASCII码值转换为字符setstr(97) : a x=abc;y=cdefg;z=x y % 连接字符串z=abccdefg k=a+3 %k=100Matlab基础与应用 20170208Matlab基础与应用 20170208Matlab基础与应用 20170208Matlab基础与应用 201702082.2 MATLAB数据类型表示存储空间注意1 : true1字节非零值:逻辑1 零值:逻辑00 : false1字节3.逻辑型(函数logical)关系运算符说明逻辑运算符说明= =等于 不等于 小于 大于 小于等于 大于等于n=(num60) struct1(2).name = heping; struct1(1).age = 31; struct1(2).age = 22; struct1 struct1 = 1x2 struct array with fields: name age Matlab基础与应用 20170208Matlab基础与应用 20170208利用struct函数定义结构体数组调用格式: s = struct(field1, values1, field2, values2, ) s = struct(field1, , field2, , struct2 = struct(name, zzj, heping, age,31, 22) Matlab基础与应用 20170208Matlab基础与应用 20170208常用函数Matlab基础与应用 20170208Matlab基础与应用 201702082.2.6 单元数据类型v单元(Cell)数据,也成为元胞数据,其概 念与结构体类似,也是把各种不同属性的数 据放在一个单元中,每一个单元用来存放各 种不同类型不同尺寸的数据,如矩阵、多维 数组、字符串、单元数组和结构体。v所不同的是结构体变量的各个元素下有字段 ,每个字段都有自己的名字,而单元数据的 各个元素就是不同类型的数据,用带有大括 号下标的形式引用单元元素。Matlab基础与应用 20170208Matlab基础与应用 20170208直接赋值定义元胞数组 c1 = 1 2; 3 4, zhengzj, 10; 5 6 7, . %续行符 abc;def, I LOVE MATLAB Matlab基础与应用 20170208Matlab基础与应用 20170208元胞数组的访问 v访问元胞数组C的第i行第j列的元胞,用 命令C(i, j),注意用的是圆括号;访问元胞数 组C的第i行第j列的元胞里的元素,用命令 Ci, j,注意用的是花括号。 celldisp函数可以显 示元胞数组里的所有内容 Matlab基础与应用 20170208Matlab基础与应用 20170208v c = 1 2, zheng, zhengzj; MATLAB, . 3 4; 5 6, I LOVE MATLAB c = 1x2 double zheng zhengzj MATLAB 2x2 double I LOVE MATLAB c(2, 2) %小括号为访问元胞 ans = 2x2 double c2, 2 %花括号为访问元胞元素 ans = 3 4 5 6Matlab基础与应用 20170208Matlab基础与应用 20170208 c = 1 2, zzj; MATLAB, 3 4; 5 6; celldisp(c) c1,1 = 1 2 c2,1 = MATLAB c1,2 = zzj c2,2 = 3 4 5 6 Matlab基础与应用 20170208Matlab基础与应用 201702082.2 MATLAB数据类型5
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号