- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Mymatlab辅导5程序设计
第五章 MATLAB程序设计 1 M文件 2 程序控制结构 3 函数文件 一、M文件 M文件概述 用MATLAB语言编写的程序,称为M文件。M文件可以根据调用方式的不同分为两类:命令文件(Script File)和函数文件(Function File)。 M文件的建立与打开 M文件是一个文本文件,它可以用任何编辑程序来建立和编辑,而一般常用且最为方便的是使用MATLAB提供的文本编辑器。 1.建立新的M文件 2.打开已有的M文件 二、程序控制结构 顺序结构 按命令行的排列顺序执行 2. 选择结构 if语句 switch语句 3. 循环结构 for语句 while语句 2.选择结构 (1)if语句 在MATLAB中,if语句有3种格式。 (a) 单分支if语句: if 条件 语句组 end (b) 双分支if语句: if 条件 语句组1 else 语句组2 end 当条件成立时,执行语句组1,否则执行语句组2,语句组1或语句组2执行后,再执行if语句的后继语句。 (2)switch语句 switch语句根据表达式的取值不同,分别执行不同的语句,其语句格式为: switch 表达式 case 表达式1 语句组1 case 表达式2 语句组2 …… case 表达式m 语句组m otherwise 语句组n end 3. 循环结构 (1)for语句 for语句的格式为: for 循环变量=表达式1:表达式2:表达式3 循环体语句 end (2)while语句 while语句的一般格式为: while (条件) 循环体语句 end break语句和continue语句 与循环结构相关的语句还有break语句和continue语句。它们一般与if语句配合使用。 break语句用于终止循环的执行。当在循环体内执行到该语句时,程序将跳出循环,继续执行循环语句的下一语句。 continue语句控制跳过循环体中的某些语句。当在循环体内执行到该语句时,程序将跳过循环体中所有剩下的语句,继续下一次循环。 三、函数文件 函数文件的基本结构 函数文件由function语句引导,其基本结构为: function 输出形参表=函数名(输入形参表) 注释说明部分 函数体语句 其中以function开头的一行为引导行,表示该M文件是一个函数文件。函数名的命名规则与变量名相同。输入形参为函数的输入参数,输出形参为函数的输出参数。当输出形参多于一个时,则应该用方括号括起来。 例 编写函数文件求半径为r的圆的面积和周长。 函数文件如下: function [s,p]=fcircle(r) %CIRCLE calculate the area and perimeter of a circle of radii r %r 圆半径 %s 圆面积 %p 圆周长 %2005年10月9日编 s=pi*r*r; p=2*pi*r; 函数调用 函数调用的一般格式是: [输出实参表]=函数名(输入实参表) 要注意的是,函数调用时各实参出现的顺序、个数,应与函数定义时形参的顺序、个数一致,否则会出错。函数调用时,先将实参传递给相应的形参,从而实现参数传递,然后再执行函数的功能。 主程序文件的格式特征 (2)程序的主体。如果文件中有全局变量,即在子程序中与主程序共用的变量,应在程序的起始部分注明。其语句是 ★global 变量名1 变量名2 … … (3) 程序按MATLAB标识符的要求起文件名,并加上后缀m。文件名中不允许用汉字。将文件应该存入自己确定的子目录中,该子目录应置于MATLAB的搜索路径下。所以还应避免出现汉字路径名。 特别要注意英文和汉字的有些标点符号(如句号、冒号、逗号、分号、引号乃至%、=、()等 人机交互命令 * (c) 多分支if语句: if 条件1 语句组1 elseif 条件2 语句组2 …… elseif 条件m 语句组m else 语句组n end 语句用于实现多分支选择结构。 while
文档评论(0)