第二拿MAA程序设计 21数据类型和运算符 22程序控制语句 2.3矩阵运算 IEW 2.5函数与M文件 2.6数据的可视化
第二章 MATLAB程序设计 2.1 数据类型和运算符 2.2 程序控制语句 2.3 矩阵运算 2.4 多项式 2.5 函数与M文件 2.6 数据的可视化
第二章 MATLAB程序设计 2.1数据类型和运算符 变量、语句 宽量命名规则 门)必须以字母开头; 2)可以由字母、数字和下划线混合组成; (变量长度应不大于31个; (4)字母区分大小写。 变量的定义 特殊变量 变量名称 功能 变量名称 功能 ans 保存最后一次的运算结果pi 圆周率 realmax 最大的浮点数值 reamin 最小的浮点数值 虚数单位 虚数单位 Inf 正无穷大 NaN 一非数(00, Inf/Inf)
2.1 数据类型和运算符 变量、语句 ➢ 变量命名规则 ⑴必须以字母开头; ⑵可以由字母、数字和下划线混合组成; ⑶变量长度应不大于31个; ⑷字母区分大小写。 ➢变量的定义 ➢特殊变量 变量名称 功能 变量名称 功能 ans 保存最后一次的运算结果 pi 圆周率 realmax 最大的浮点数值 realmin 最小的浮点数值 I 虚数单位 j 虚数单位 Inf 正无穷大 NaN 非数(0/0,Inf/Inf)
第二章 MATLAB程序设计 基本语句 MATLAB语言的基本语句结构为: 变量名列表=表达式 等号左边的叟量名列表为MA仉AB语句的返回值,若一次返回多个结果, 则变量列表用[]括起来,各变量间用逗号分隔; 等号右边为表达式,可以是矩阵运算或函數调用,可以由分号()、逗号( 或回车结袁 教据粪型 在 MATLAB里共有六种数据类型,每一种类型可以是一维、二维和多维的 蚁精度型( double 字符型(char 稀跪型( sparse) ˇ存储型( storage) √细胞型(cell √结构型( struct)
➢基本语句 MATLAB语言的基本语句结构为: 变量名列表=表达式 等号左边的变量名列表为MATLAB语句的返回值,若一次返回多个结果, 则变量列表用[ ]括起来,各变量间用逗号分隔; 等号右边为表达式,可以是矩阵运算或函数调用,可以由分号(;)、逗号(,) 或回车结束。 数据类型 在MATLAB里共有六种数据类型,每一种类型可以是一维、二维和多维的。 ✓双精度型(double) ✓字符型(char) ✓稀疏型(sparse) ✓存储型(storage) ✓细胞型(cell) ✓结构型(struct)
第二章 MATLAB程序设计 字符型 基本规则: (1)所有字符串都用单引号括起来; (2)字符串中的每一个字符都是该字符串变量中的一个元素; (3)字符串中的字符以ASCⅡ码形式存储,因而区分大小写。 常用操作方法: (1)建立:常用函数有char、int2str、num2str等 (2)连接:水平连接通过函数srca或在中括号内用逗号连接; 垂直连接通过函数 streat或在中括号内用分号连接。 (3)比较:常用函数 strcmp,相同则返回1,否则为0。 (4)查找:常用函数 findstr
➢字符型 基本规则: ⑴所有字符串都用单引号括起来; ⑵字符串中的每一个字符都是该字符串变量中的一个元素; ⑶字符串中的字符以ASCⅡ码形式存储,因而区分大小写。 常用操作方法: ⑴建立:常用函数有char、int2str、num2str等。 ⑵连接:水平连接通过函数strcat或在中括号内用逗号连接; 垂直连接通过函数strvcat或在中括号内用分号连接。 ⑶比较:常用函数strcmp,相同则返回1,否则为0。 ⑷查找:常用函数findstr
第二章 MATLAB程序设计 结构型 结构的建立和访问方法: ①直接建立结构和各个域,同时给各域赋值,结构和域之间用点“.” 连接。同样,访问结构的各个域时,其格式为: 结构名.域名 ②用函数 struct立结构,其用法为: s=struct(field1,,values, 'field2,, values2, 12-1 s= struct('type, 'big, little), color, 'red,x, 3 11) Field values1 values2 1×2 struct Type big little S(1). type; S(2). type C olor red red s(1). color; s(2). color s(1)
➢结构型 结构的建立和访问方法: ①直接建立结构和各个域,同时给各域赋值,结构和域之间用点“.” 连接。同样,访问结构的各个域时,其格式为: 结构名.域名 ②用函数struct建立结构,其用法为: s=struct(‘field1’,values1,‘field2’,values2,┅) 例2-1 s = struct('type',{'big', 'little'},'color','red‘, ‘x',{3 1}) Field values1 values2 Type big little Color red red X 3 1 s(1).type; s(2).type s(1).color; s(2).color s(1).x; s(2).x 1×2 struct
第二章 MATLAB程序设计 运算符 ☆算术通算符 加减 数组幂 左除或反斜杠 按照运算符的优先级可把算术 矩阵乘法 /右除或斜杠 运算符分为五级,在每一级里 数组乘法 /数组除 运算符有同样的优先级,在运 矩阵幂 冒号 算时自左向右结合 ☆关糸通算符 在 MATLAB里共有六个关亲运算符 大于 =小于等于>=大于等于 =等于 =不等于 关無运算符将生成一个0-1矩阵,当运算数相应元素为真时,对应 位置上生成1,否则为0
运算符 ❖算术运算符 + 加 .^ 数组幂 - 减 \ 左除或反斜杠 * 矩阵乘法 / 右除或斜杠 .* 数组乘法 ./ 数组除 ^ 矩阵幂 : 冒号 按照运算符的优先级可把算术 运算符分为五级,在每一级里 运算符有同样的优先级,在运 算时自左向右结合 ❖关系运算符 在MATLAB里共有六个关系运算符 大于 =大于等于 == 等于 ~=不等于 关系运算符将生成一个0-1矩阵,当运算数相应元素为真时,对应 位置上生成1,否则为0
第二章 MATLAB程序设计 心逻辑运算符 (与)|(或)~(非) 结杲是一个0-1矩阵。当逻辑表达式的值为真肘,赋值1,否则为0 心逻辑函教 a11函数:当某列的元素都为真肘,返回值为1,否则返回0。最终运 算结果为一个01行向量 any函数:当向量中至少有一个元素为真肘,返回值为1,否则返回 0。最终运算结果为一个0-1行向量 find函数:用于查找向量中的真元素的下标,返回由所有真元素下 标构成的列向量。 例2-5 倒2-6 例2-7
❖逻辑运算符 & (与) |(或) ~(非) 结果是一个0-1矩阵。当逻辑表达式的值为真时,赋值1,否则为0 ❖逻辑函数 all函数:当某列的元素都为真时,返回值为1,否则返回0。最终运 算结果为一个0-1行向量 any函数 :当向量中至少有一个元素为真时,返回值为1,否则返回 0。最终运算结果为一个0-1行向量 find函数 :用于查找向量中的真元素的下标,返回由所有真元素下 标构成的列向量。 例2-5 例2-6 例2-7
第二章 MATLAB程序设计 2.2程序控制语句 循环语句 MATLAB中的循环语句包抬for循环和 while循环两种类型。 for循环 fo循环的基本格式为: for循环变量=起始值:步长:终止值 循环体 end 步长的缺省值是1。步长可以在正实数或负实教范内 任意指定,对于正数,循环变量的值大于终止值肘,循环 结柬;对于负教,循环变量的值小于终止值肘,循环结柬。 倒2-8-1
2.2 程序控制语句 • 循环语句 MATLAB中的循环语句包括for循环和while循环两种类型。 ➢ for循环 for循环的基本格式为: for 循环变量=起始值:步长:终止值 循环体 end 步长的缺省值是1。步长可以在正实数或负实数范围内 任意指定,对于正数,循环变量的值大于终止值时,循环 结束;对于负数,循环变量的值小于终止值时,循环结束。 例2-8-1
第二章 MATLAB程序设计 while循环 whilea循环的基本格式为 while表达式 循环体 end 若表达式为真,则执行循环体的内容,执行后再判断表 达式是否为真,若为假则跳出循环体,向下继续执行,否则 继姎执行循环体。 break:从循环体中跳出,开使循环结袁。 例2-8-2
➢ while循环 while循环的基本格式为: while 表达式 循环体 end 若表达式为真,则执行循环体的内容,执行后再判断表 达式是否为真,若为假则跳出循环体,向下继续执行,否则 继续执行循环体。 break:从循环体中跳出,并使循环结束。 例2-8-2
第二章 MATLAB程序设计 f-else- elseif语句 格式 if逻辑表达式 执行语句 end 当逻辑表达式的值为真,则执行该结构中的执行语句内容,执行 完后向下继续执行,若逻辑表达式的值为假,跳过结构中的执行语勺 继续向下执行。 if-else格式 if逻辑表达式 执行语句1 else 执行语句2 ent 如果逻辑表达式的值为真,则执行语句1,然后跳过语句2向下执 行;若逻辑表达式的值为假,则跳过执行语勺1而执行语句2,然后向 下执行
• if-else-elseif语句 ➢if格式: if 逻辑表达式 执行语句 end 当逻辑表达式的值为真,则执行该结构中的执行语句内容,执行 完后向下继续执行,若逻辑表达式的值为假,跳过结构中的执行语句 继续向下执行。 ➢if-else格式 if 逻辑表达式 执行语句1 else 执行语句2 end 如果逻辑表达式的值为真,则执行语句1,然后跳过语句2向下执 行;若逻辑表达式的值为假,则跳过执行语句1而执行语句2,然后向 下执行