欢迎来到天天文库
浏览记录
ID:19888163
大小:168.00 KB
页数:16页
时间:2018-10-07
《ch03字符串元胞与构架数组》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第三章字符串、元胞和构架数组MATLAB6.x版的内建数据类型(Built-indatatype)就有5种以上,此外还有许多其他专门设计的类(Class),如符号类、内联函数类、控制工具包中的线性时不变模型类、神经网络类等。就程序设计而言,MATLAB6.x版采用了面向对象编程技术。数据和编程的改变使用户能更简捷而自然地解决复杂的计算问题(如符号计算问题、多变量控制系统问题、神经网络问题)。本章内容根据MATLAB6.5编写,但绝大部分内容适用于其他MATLAB6.x版本。第二章介绍了数值数组(NumericArra
2、y),这是读者比较熟悉的数据类型。本章将集中讲述另外三类数据:字符串数组(CharacterStringArray)、元胞数组(Cellarray)和构架数组(Structurearray)。它们之间的基本差别见表3-1。表3-1四种数据类型基本构成比较表数组类型基本组分组分内涵基本组分占用字节数数值数组元素双精度实数标量或双精度复数标量816字符串数组元素字符2元胞数组元胞可以存放任何类型、任何大小的数据。不定构架数组构架只有挂接在构架上的“域”才能存放数据。数据可以是任何类型、任何大小。不定3.1字符串数组3.1
3、.1字符串入门【例3.1.1-1】先请读者实际操作本例,以体会数值量与字符串的区别。Clear%清除所有内存变量a=12345.6789%给变量a赋数值标量class(a)%对变量a的类别进行判断a_s=size(a)%数值数组a的“大小”a=1.2346e+004ans=doublea_s=11b='S'%给变量b赋字符标量(即单个字符)class(b)b_s=size(b)b=Sans=charb_s=11whos%观察变量a、b在内存中所占字节NameSizeBytesClass16a1x18doublearr
4、aya_s1x216doublearrayans1x48chararrayb1x12chararrayb_s1x216doublearrayGrandtotalis10elementsusing50bytes3.1.1串数组的属性和标识【例3.1.2-1】本例演示:串的基本属性、标识和简单操作。(1)创建串数组a='Thisisanexample.'a=Thisisanexample.(2)串数组的大小size(a)ans=119(3)串数组的元素标识a14=a(1:4)ra=a(end:-1:1)a14=Thisr
5、a=.elpmaxenasisihT(4)串数组的ASCII码ascii_a=double(a)ascii_a=Columns1through128410410511532105115329711032101Columns13through191209710911210810146char(ascii_a)ans=Thisisanexample.(5)对字符串ASCII码数组的操作w=find(a>='a'&a<='z');ascii_a(w)=ascii_a(w)-32;char(ascii_a)ans=THISI
6、SANEXAMPLE.(6)中文字符串数组A='这是一个算例。';A_s=size(A)A56=A([56])ASCII_A=double(A)A_s=17A56=算例16ASCII_A=Columns1through6547545191153947473505219549405Column741379char(ASCII_A)ans=这是一个算例。(7)创建带单引号的字符串b='Example''3.1.2-1'''b=Example'3.1.2-1'(8)ab=[a(1:7),'',b,'.']%第2个输入为空格
7、串ab=ThisisExample'3.1.2-1'.3.1.1复杂串数组的创建3.1.1.1多行串数组的直接创建【例3.1.3.1-1】多行串数组的直接输入示例。clearS=['Thisstringarray''hasmultiplerows.']S=Thisstringarrayhasmultiplerows.size(S)ans=2183.1.1.2利用串操作函数创建多行串数组【例3.1.3.2-1】演示:用专门函数char,str2mat,strvcat创建多行串数组示例。S1=char('Thisstri
8、ngarray','hastworows.')S1=Thisstringarrayhastworows.S2=str2mat('这','字符','串数组','','由4行组成')S2=这字符串数组由4行组成S3=strvcat('这','字符','串数组','','由4行组成')S3=这字符串数组16由4行组成size(S3)ans=553.1
此文档下载收益归作者所有