- 1、本文档共25页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第11章MATLAB基本编程剖析
第11章 MATLAB基本编程 在使用MATLAB的过程中,可以直接在命令行窗口输入程序,采用交互式的方式进行编程,边输入程序边运行。对于大型的复杂程序,在命令行窗口中直接输入程序会非常的麻烦。MATLAB和其它的高级语言一样,可以进行程序的设计,编写扩展名为.m的M文件,实现各种复杂的计算。本章将详细介绍MATLAB的编程,程序的流程控制,以及函数编程等。 11.1 MATLAB编程概述 MATLAB是一种解释性语言,本身不能完成任何事情,只是对用户的程序进行解释执行。MATLAB语言是采用C语言编写的,因此语法和C语言非常相似。对于熟悉C语言的用户,学习MATLAB编程会非常容易。MATLAB编写的程序文件有两种:脚本M文件和函数M文件。 11.1.1 M文件的创建 在MATLAB中,M文件有两种类型:函数(Functions)和脚本(Scripts),都是以.m作为文件的扩展名。M文件为普通的ASCII文本文件,可以采用文字编辑和处理软件来建立。脚本是一系列命令、语句的简单组合。 11.1.2 脚本M文件 脚本文件中的变量都为全局变量,程序运行后,这些变量保存在MATLAB的基本工作空间内,一般采用函数clear清除这些变量。为了避免因为变量名相同引起冲突,一般在脚本文件的开始,都采用函数clear all,清除所有基本空间中的变量。 11.1.3 函数M文件 函数M文件在执行的过程中,所产生的变量一般都是局部变量,存放在函数自身的函数工作空间中,不会和基本工作空间中的变量产生冲突。对用户来说,函数M文件就像一个黑匣子,只有输入和输出。采用函数M文件,非常易于实现程序的模块化,可以实现程序的分工合作、共同开发,适合大型程序开发。 在MATLAB的命令行窗口输入:edit std.m,利用MATLAB文本编辑器打开函数M文件,如图11.2所示。函数std( )用于求样本数据的标准差,程序非常简单,但是包含了函数M文件的全部内容。 11.1.4 函数的参数传递 在MATLAB中,函数的参数传递是值传递,将变量或常量的值传递给函数的形式参数指定的变量,函数的计算在函数空间中进行,计算结束后,函数空间的变量被清除,函数的返回值返回到MATLAB的基本工作空间中。 在MATLAB中,函数nargin的值为输入参数的个数,函数nargout的值为输出参数的个数。 11.2 流程控制 MATLAB编程的基本结构包括:顺序结构、分支结构和循环结构,此外还有一些其它的控制语句。本节首先介绍MATLAB中的变量,然后将详细介绍三种基本的程序结构,最后介绍了交互式输入。 11.2.1 变量 在MATLAB中,变量的类型包括:局部变量、全局变量和永久变量。MATLAB为每个变量分配一块内存空间。变量和工作空间紧密联系。 1.局部变量 2.全局变量 全局变量采用global进行声明,格式为:global 变量1 变量2。中间采用空格进行分割。 3.永久变量 永久变量只能在函数M文件中进行定义,格式为:persistent 变量1 变量2。中间采用空格进行分割。 11.2.2 顺序结构 顺序结构是最简单的程序结构,用户在编写好程序后,按照从上到下、从左到右的顺序执行程序中的语句。由于没有控制语句,结构比较单一,但是这种程序比较容易编写。 11.2.3 分支结构 分支结构需要进行判断,只有满足一定的条件才执行某些语句。在MATLAB中,分支结构有两类:if语句和switch语句。下面分别进行介绍。 1.if…end语句 2.if…else…end语句 3.if… elseif… else…end语句 4.switch…case…end语句 11.2.4 循环结构 循环结构能够重复执行某一段相同的语句。MATLAB中,提供了两种循环语句,分别是for循环和while循环。如果已知循环次数,通常用for循环语句;如果未知循环次数,但有循环条件,则用while循环语句。 1.for循环语句 2.while循环语句 3.break语句和continue语句 11.2.5 try…catch语句 在程序设计时,如果不能确定某段程序代码是否会出错,可以采用try…catch语句。在MATLAB中,使用try…catch语句能够捕获和处理错误,其调用格式为: try 程序代码1 catch 程序代码2 end 11.2.6 人机交互函数 在MATLAB中提供了一些人机交互的函数,用户可以从键盘输入数据或字符串,可以暂停程序的运行等。下面分别进行介绍。 1.函数input( ) 2.函数keyboard 3.函数pause 4.函数echo 5.函数return 11.3 函数类型 在MATLAB中,函数M文件可以分为:主函数、
文档评论(0)