matlab函数文件和脚本文件.ppt

matlab函数文件和脚本文件.ppt

ID:50243546

大小:580.00 KB

页数:46页

时间:2020-03-10

matlab函数文件和脚本文件.ppt_第1页
matlab函数文件和脚本文件.ppt_第2页
matlab函数文件和脚本文件.ppt_第3页
matlab函数文件和脚本文件.ppt_第4页
matlab函数文件和脚本文件.ppt_第5页
资源描述:

《matlab函数文件和脚本文件.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、第五章脚本文件和函数文件本节内容掌握脚本文件和函数文件的区别掌握函数文件的编写和调用掌握M文件的调试方法掌握文件的打开和关闭§1M文件-脚本文件脚本文件只是一串按照用户意图排列而成的MATLAB指令集合,即只是简单命令的叠加。它没有输入参数,也没有输出参数。它运行后产生的变量都是全局变量,均驻留在workspace中。只要用户不使用指令clear加以清除,或MATLAB指令窗不关闭,这些变量将一直保存在基本工作空间中。例:计算小于任意自然数n的fibonnaci数。运行文件(F5/Debug

2、Run)函数文件函数文件是一种特殊类型的运行在自己独

3、立的工作空间的M文件,通过输入形参表接收数据,通过输出形参返回结果到调用文件。function[输出形参表]=fname(输入形参表)%H1注释行%其他注释行……(可执行代码)……(return)以function开头的一行为引导行,是函数定义语句,表示该M文件是一个函数文件。帮助文本的首行(H1行):用于help帮助使用和lookfor搜索帮助文本:指H1行之后到函数体之前的注释行。包括函数的意义、各参数的意义、调用格式以及程序的作者、日期等。函数体是函数的执行代码,是文件主要部分。注释:以%开头,可出现在程序中任意一行,用绿色表示。编译时会

4、被忽略,不会影响程序运行速度。例:编写函数计算两点之间的距离。当函数的输出参数多于一个时,应该用方括号括起来,并以逗号隔开;传递给函数的变量不必与函数定义行中的参数同名;函数和文件的命名规则与变量命名规则相同;若保存的文件名与函数名不同,则在调用时必须使用文件名。建议:函数名与文件名应一致(系统默认)注意事项函数文件运行时,MATLAB会专门为其开辟一临时工作空间(函数空间),所有变量都存放于此。文件运行完毕后,该临时空间以及所有中间变量就立即被清除;函数空间随函数文件的调用而产生,随调用而结束;函数文件的变量除特别声明外均是局部变量函数运行-

5、调用注:1)函数调用时,先将实参传递给相应的形参,实现参数传递,然后再执行函数的功能。2)各实参出现的顺序、个数应与形参定义的顺序和个数一致,否则会出错。函数文件运行不能选中菜单Run,而是调用。[输出实参表]=函数名(输入实参表)函数调用的一般格式脚本文件和函数文件的区别相同:扩展名都是.m,可用文件编辑器编写不同:1)脚本文件无输入、输出参数;2)函数文件与指令空间只能通过输入参数和输出参数通信,中间变量不出现;3)脚本文件产生的变量都是全局变量,存放在基本工作空间中;而函数文件产生的中间变量存放在临时工作空间中,它随函数的调用结束而删除;

6、4)运行方式不同。1)以ffib.m为名存盘2)MATLAB命令窗口输入命令:>>ffib(1000)即可求小于1000的Fibonacci数。例:编写函数求小于任意自然数n的fibonnaci数。递归调用:函数调用其本身functionf=factor(n)ifn<=1f=1;elsef=factor(n-1)*nendfori=1:10fac(i)=factor(i);endfac打开文本编辑器编写函数文件factor.m新打开一文件编辑器,在编写的脚本文件中调用该函数文件factor.m§2函数操作参数值的传递函数参数数目的可调性narg

7、in/nargout:用于检查被调用函数的输入/输出参数的数目-nargin:实际输入参数的个数-nargout:实际输出参数的个数在函数体内确定输入输出参数后可以用条件语句确定需要执行的操作输入/输出参数的可变性varagin/varargout:输入/输出参数列表,参数是以单元数组的形式进行传输functiontest(varargin)disp(['narginis'num2str(nargin)]);forv=1:numel(varargin)disp(['varargin{'num2str(v)'}is'class(varargin{

8、v})]);endtest(1,'a',uint8(32));narginis3varargin{1}isdoublevarargin{2}ischarvarargin{3}isuint8错误处理error:中断函数并显示出错误信息;warning:错误不是致命的,故继续执行函数并显示出警示信息lasterror:返回最后发生的错误的相关信息lastwarning:返回最后发生的错误的警告信息局部变量和全局变量局部变量:仅存在于函数空间内部的中间变量,影响范围仅限于函数本身;全局变量:在脚本文件或基本工作空间中定义,它可作用于整个MATLAB工

9、作空间,所有函数都可以对其进行修改和存取;在函数内访问全局变量,必须首先在函数内用global定义,而后才可以使用其他函数类型匿名函数的格式:fhan

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。