Matlab学习笔记---Matlab程序化编程

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.M文件有两种形式:脚本形式和函数形式

脚本形式是命令行的简单叠加,matlab系统会自动按照顺序结构执行文件中的命令,所谓函数形式主要用于解决参数传递和函数调用的问题。

2.脚本形式的M文件在运行过程中可以调用Matlab工作系统区域内的所有数据,说产生的变量全都是全局变量。这些变量一旦生成,就一直保存到内存空间中,直到用户执行clear函数或者是quit函数删除系统中的内存变量为止。在函数文件中,所有的变量,除特殊声明外,都是全局变量,这些变量不会影响到整个系统的内存空间。

3.函数形式的M文件的文件名和出现在文件第一行的函数名必须相同,因为在实际中,matlab忽略了第一行,而是按照文件名来执行函数的。M文件在windows 下是不区分大小写的。函数名必须以一个字母开头,函数名可以是任意的字母、数字和下划线的组合,这个命名的规则和变量的命名规则一样。

4.函数形式的M文件第一行被称为函数声明行,而且函数形式的M文件必须包括function这个关键字,其后就是这个函数最常用的方式调用的语法。函数形式的文件可以调用脚本文件。一个函数形式的M文件中可以出现多个函数,这些函数被称为子函数或局部函数

5.File-→New→Function

调用:

6. File-→New→Script

7.函数文件在函数定义下面的一行就是解释文件,可以被help读出:

8.局部变量和全局变量的测试:

我们先定义一个函数文件,有x1,x2,x3三个局部变量。

然后我们定义三个全局变量:

然后我们开始调用函数

从上我们就可以知道,局部变量不会对全局变量产生影响。我们再用whos来查看内存中变量的存储情况

9.M文件中的控制语句

9.1顺序语句

9.2循环语句

For i=(表达式)

(执行语句)

End

For要和end匹配,同时,需要适当的使用分号,否则把什么都输出来了While语句

While 表达式

执行语句

End

9.3选择语句

If 表达式

执行语句

End

If 表达式

执行语句

Else

执行语句2

End

If 表达式

执行语句

Elseif 表达式

执行语句2

Else

执行语句3

End

9.4 分支语句

Switch 开关语句

Case 条件语句

执行语句1

Case 条件语句

执行语句2

Otherwise

执行语句n

End

9.5.Continue语句和break语句

9.6 echo语句

通常在执行语句的过程中,命令窗口是看不到执行过程的,但有些时候需要查看程序运行的中间变量,就需要用到echo语句

Echo on:显示它后面所有执行的命令文件的指令

Echo off:不显示

Echo:在显示和不显示来回切换

对于函数形式的M文件:

Echo filename on:使filename指定的M文件的执行命令显示出来

Echo filename off:使filename指定的M文件的执行命令显示不显示出来

Echo on all:将其后所有的M文件的执行指令都显示出来

Echo off all: 将其后所有的M文件的执行指令都不显示出来

9.7 error语句

这个函数命令用来指示出错的信息并终止当前函数允许的情况

Error(‘message’)

error后续就没有执行

9.8 try..catch语句

Try

(commands1)

Catch

(commands2)

End

9.9input语句

此命令用来提示用于从键盘输入数据、字符串或者表达式,并接收输入值Variable=input(‘提示信息’):把提示信息显示在屏幕上,等待用户输入,并将输入的值传入到变量variable

9.10.pause语句

Pause:停止M文件执行,按任意键继续

Pause(n):中止执行程序n秒后继续,n为任意的实数

Pause on:允许后续的pause命令中止程序的允许

Pause off:禁止后续的pause命令中止程序的允许

10.变量

全局变量:函数内部定义的变量都是局部变量,如果要想变为全局变量,就需要用global函数阿里进行定义,那么以后任何地方都可以使用了

永久变量:通过persistent函数来定义,但其只能局限于函数中。

11.函数

M文件中的第一个函数是主函数,主函数之后可以是任意函数的子函数,在命令窗口或M文件中只能调用主函数,调用时就直接调用它的函数名。

嵌套函数:在一个函数的内部可以再定义多个其他函数,但一个M文件中只能有一个主函数,

局部函数:把设置在目录private下的函数称为局部函数,这些函数只有private目录的父目录中的函数才可以调用,其他目录下的函数不能调用。

12.函数句柄

函数句柄提供了一种简洁访问函数的手段,用户可以很方便地调用其他函数。

函数句柄的创建比较简单,可以通过特殊符号@来引导函数名,这样就可以实现相

应函数句柄的定义操作。Fhandle=@functionname

比如表达式:myfhandle=@sin就是创建了一个句柄,名字叫做myfhandle,通过@引导了Matlab系统中的sin函数。或者也可以把myfhandle去掉,直接调用赋值也行。

函数句柄的操作:

相关文档
最新文档