如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
MATLAB编程基础MATLAB编程基础(续)4.1概述概述(续)概述(续)概述(续)概述(续)MATLAB编程基础(续)4.2流程控制流程控制(续)4.2.1选择结构4.2.1选择结构选择结构(续)4.2.2循环结构循环结构(续)循环结构(续)4.2.3break语句和continue语句4.2.4提高运算性能提高运算性能(续)提高运算性能(续)提高运算性能(续)提高运算性能(续)提高运算性能(续)MATLAB编程基础(续)4.3M脚本文件M脚本文件(续)M脚本文件(续)MATLAB编程基础(续)4.4函数文件函数文件(续)用户自定义的M函数文件是由用户自己利用M语言编写的文件系统M函数文件是由MATLAB提供的M语言函数文件本节介绍4.4.1基本结构4.4.2输入输出参数4.4.3子函数和私有函数4.4.4局部变量和全局变量4.4.5函数执行规则M语言函数文件具有下面的不同部分函数定义行在线帮助注释行M语言代码函数m文件的格式:function返回变量=函数名(输入变量)注释说明语句段程序语句段特定规则:1)函数m文件第一行必须以单词function作为引导词,必须遵循如下形式:function<因变量>=<函数名>(<自变量>)2)程序中的变量均为局部变量,不保存在工作空间中,其变量只在函数运行期间有效。001functiony=average(x)002%AVERAGE求向量元素的均值003%语法:004%Y=average(X)005%其中,X是向量,Y为计算得到向量元素的均值006%若输入参数为非向量则出错007008%代码行009[m,n]=size(x)010%判断输入参数是否为向量011if(~((m==1)|(n==1))|(m==1&n==1))012%若输入参数不是向量,则出错013error('Inputmustbeavector')014end015%计算向量元素的均值016y=sum(x)/length(x)函数定义行001functiony=average(x)包括关键字function函数输出参数y函数名称average函数输入参数x函数名称定义要求必须以字符开头,后面可以用字符、数字和下划线的组合构成函数名称MATLAB对函数名称的长度有限定函数的M文件名称最好和函数名称保持一致,若不一致,则调用函数时需要使用文件名称而非函数名称在线帮助M函数文件的在线帮助为紧随在函数定义行的注释行002%AVERAGE求向量元素的均值003%语法:004%Y=average(X)005%其中,X是向量,Y为计算得到向量元素的均值006%若输入参数为非向量则出错若在MATLAB命令行窗口中键入指令helpaverage则>>helpaverageAVERAGE求向量元素的均值语法:Y=average(X)其中,X是向量,Y为计算得到向量元素的均值若输入参数为非向量则出错注释行008%代码行010%判断输入参数是否为向量012%若输入参数不是向量,则出错015%计算向量元素的均值M语言代码008%代码行009[m,n]=size(x)010%判断输入参数是否为向量011if(~((m==1)|(n==1))|(m==1&n==1))012%若输入参数不是向量,则出错013error('Inputmustbeavector')014end015%计算向量元素的均值016y=sum(x)/length(x)代码行需要完成具体的算法,实现用户的具体功能MATLAB在定义输入输出参数时不需要指出变量的类型,而是将参数默认为双精度型MATLAB在定义参数时,没有确定输入参数的维数或者尺寸M语言的函数文件不仅可以有一个输入参数和一个返回值,还可以为M语言函数文件定义多个输入参数和多个输出参数例4-15多个输入输出参数的M函数function[avg,stdev,r]=ourstats(x,tol)%OURSTATS多输入输出参数示例%该函数计算处理矩阵,得到相应的均值、标准差和矩阵的秩[m,n]=size(x);ifm==1m=n;end%Averageavg=sum(x)/m;%Sandaddeviationstdev=sqrt(sum(x.^2)/m-avg.^2);%Ranks=svd(x);r=sum(s>tol);运行例4-15>>A=[123;456]A=123456>>[a,s,r]=ourstats(A,0.1)a=2.50003.50004.5000s=1.50001.50001.5000r=2>>[a,