|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
: w, x5 `: x0 z, b2 g; q' n
MATLAB基础教程(1)
?0 B# S" H$ u* P/ O( L- o: @, j2 V$ J% A% Q
变量和数组
. N6 I; {3 ]; _9 N! e$ z) `, V7 q+ [) |1 x& f9 Z+ |# f
MATLAB程序的基本数据单元是数组。一个数组是以行和列组织起来的数据集合,并且拥有一个数组名。数组中的单个数据是可以背访问的,访问的方法是数组名后带一个括号,括号内是这个数据多对应行标和列标。标量在MATLAB中也被当作数组来处理——它被看作只有一行一列的数组。- w: c, Y9 C" N
: }7 T+ G; l1 ]4 A
数组的大小(size)由数组的行数和列数共同决定,注意行数在前。一个数组所包含的数据多少可由行数乘列数得到。 i! b/ j. x. i( ]0 j4 i% h
! O- ^) d+ J7 ?" t+ O. i' x
例如,下列数组的大小为:* [ |% U d4 @# r G
2 m) P4 ?1 u$ r) H9 V
4 ]7 L: Y: H9 c# [# e. a ?
2 U( K6 C& D8 f+ x+ _
$ C) J5 B7 x$ k" H2 m$ Q
9 G+ W: K1 ?5 |" Q" {% T: R& B& Q I0 _ S
数组中的单个数据是可以被访问的,如果这个数组是宇哥行向量或列向量,则只需要一个下标。例如上面的数组A(2 1)为3,C(2)为2。一个MATLAB变量是一段包含一个数组的内存区,并且拥有一个用户指定的变量名。通过适当的命令和它的变量名随时可以就调用它和修改它。' b5 A. g5 Y% P) z5 z& U1 Y
$ Y& f- Y" ?8 V* t9 h% F8 E
MATLAB的变量名必须以字母开头,后面可以跟字母,数字和下划线(_),只有前31个字符是有效的;如果超过了31个字符,其余的字符将被忽略。如果,声明两个变量,两个变量只有第32个字符不同,那么MATLAB将它们当作同一变量对待。! _, O: k# |. g$ Z4 c
9 Q& \! L9 Y# v
好的编程习惯" D F( W* Q/ e2 _! W( I4 u& b' E
0 ?: E5 G, Y9 N$ l, `9 [! P
给变量起一个描述性的且易于记忆的变量名。例如,货币汇率可以exchange_rate为变量名。# W' j( K' @* p5 F7 N( ]# @
% p, @! i, Z" S: T5 j+ G) ?在所写的程序开头列出——数据字典十分重要,数据字典列举了本程序中用到的所有变量的定义。它的定义应包括本条目的所要描述的内容和它在执行所在的单元。5 B7 i* W; g3 N9 F- y1 `
' }& m0 b: J8 P5 ^/ D% H9 m每次用到一个变量时,确保变量名的大小写的精确匹配。变量名中只使用小写字母是个好的编程习惯。, Y. P* A/ E E" ~7 O
. Y6 Q4 L- Y9 }: I1 y7 T$ |
两个最常见的变量类型是char型和double型。double型的变量包括由64位双精度浮点数构成的标量或数组。这种变量可以代表实数,虚数和复数。每个值的实部和虚部的变化范围为正反10-^-308~10^308,拥有15到16位有效数字。
" {7 Z `9 P5 D3 u1 K9 d* q' Y: w1 S% t" q. k; ~3 u7 \9 O
将一个数值赋值于一个变量名,那么MATLAB将自动建立一个double型变量。例如,下面语句创建了一个以var为变量名的double型变量,包含了一个double型的单个元素,储存了复数值(1+i);
4 {$ K, f- C. ]6 _1 A$ z
4 K$ N" V _5 v& Cvar=1+i;) B3 }8 E0 R/ C% m6 c
+ e1 }1 ?$ T4 L @$ Y$ xchar型的变量包括由16位数值构成的标量或数组,每一个16位数代表一个字符。这个类型的经常用于字符串操作,当一个字符或字符串赋值于一个变量名时,系统会自动建立一个char型变量。例如,下面的语句执行后,系统将会建立一个1x26的字符串数组。6 Y$ q/ A& D( {( k
/ r4 s7 g: D O% J; ]
' b; o0 W6 X9 l Bcomment='this a character string';# X9 J( L" t' V" T3 ~" P
* |) ]4 {8 K' t# }6 I' z7 j像C语言这样的语言中,变量类型和变量在使用之前必须强制声明。这种语言称为强类型语言。相对的,像MATLAB这样的叫做弱类型语言。通过简单的赋值形式就可以创建变量,变量类型取决于创建时的类型。: m _2 y2 \0 i. ?: f1 f
+ A( H8 d4 }; Y- O! p( w3 Y4 H
) s4 B2 c3 J6 T- V" t! L1 `
1 Z0 C' `) m$ b: G0 @
; C( O$ e# v5 h6 C8 g$ I }1 ~0 {: S1 p( u: f0 X# A
' C7 ~& F, G7 c7 v" w' R/ |
- }1 k; B1 f! D l4 a |
|