- 13
- 0
- 约4.41千字
- 约 33页
- 2016-12-26 发布于贵州
- 举报
第3章 MATLAB编程基础 MATLAB是一种数据可视化软件,同时也是一种编程语言。MATLAB提供了丰富的方法和手段来解决工程、科学、计算和数学等学科中的理论和应用方面的问题,这些方法和手段都是通过MATLAB编程语言实现的。本章将简单介绍MATLAB的编程基础,包括程序流程控制、函数使用、程序调试等方面,从而使读者可以快速掌握MATLAB的基本编程要领。 3.1 MATLAB程序流程控制 MATLAB与其他计算机语言一样,允许用户采用决策结构控制命令来执行流程的控制。流程控制的功能非常强大,它能够通过各种循环和迭代的方法使多个数据产生相互影响,从而实现用户的运算目的。本节将介绍MATLAB的流程控制结构。 3.1.1 顺序结构 MATLAB的编程语言本质上是一种解释性的语言,用户可以直接在MATLAB的命令提示符下输入语句执行,也可以编写各种应用程序,然后回到MATLAB环境中进行编译执行,最后输出处理结果。MATLAB流程控制中,在不包含其他流程控制结构语句时,MATLAB默认按顺序执行。 3.1.2 循环结构 MATLAB的循环结构主要有for循环和while循环两种形式。这两种循环语句的使用使得MATLAB能够用简单的语句处理复杂迭代算法。 3.1.3 选择结构 选择语句又叫多重条件转移语句,MATLAB中通过switch…case语句来实现,它的基本组成结构的语法格式为: switch 条件表达式 case 常量1 语句组1 case{常量1,常量2} 语句组2 …… otherwise 语句组n+1 end 3.1.4 分支语句 分支结构又叫条件转移结构,即按照一定的条件选择执行一定的语句。MATLAB提供的分支结构语句结果叫做if-else-end条件转移语句,它有三种常见的组成结构。 3.1.5 其它控制语句 break 语句是MATLAB提供的另一种常用的控制语句,其作用是用于终止正在执行的for循环语句和while循环语句,以跳出循环体,结束计算过程。在循环结构的嵌套中,break语句仅仅只能跳出该语句所在的循环体语句,并不能跳出高层的循环体。 3.2 函数句柄 在MATLAB中,函数接受用户的输入参数,再通过计算将函数结果返回给用户。很多情况下,用户则需要将一个函数的标识作为一个参数传递给另一个函数,传递过程可以通过函数句柄实现。 3.2.1 创建和查看函数句柄 函数句柄类似于C语言中的指针,包含了函数的路径、函数名、类型以及可能存在的重载方法。函数句柄必须通过专门的定义创建的,而一般的图像的句柄是自动建立的。MATLAB 7.X中提供了函数句柄工具。使用函数句柄不仅能够提高运行速度,而且能够使用起来能够像使用变量一样方便。 3.2.2 使用函数句柄 函数句柄的使用方法和函数的使用方法一样,可以用feval命令使用,语法格式为, z=feval(funname,inputpara) 其中,funname为函数名,inputpara为输入参数。 3.3 变量的检测和限权使用函数 MATLAB与其他编程语言不同在于,MATLAB中数据处理更加有效,因为MATLAB提供了强大的变量检测和限权使用函数,使得变量从定义到传递、引用等多方面都变得更加高效、方便。本节将简要介绍MATLAB中几种特殊的变量定义/传递方式。 3.3.1 输入输出变量检测指令 输入输出变量检测指令用于输入、输出“变长度”时使用。 3.3.2 跨空间变量传递 在MATLAB函数运行中,避免不了在多个子函数中应用同一组数值的情况,并且这些数值的变化对引用它的函数产生相应的影响时,就要求系统能够跨空间传递变量。MATLAB提供了可跨空间变量传递指令,跨空间赋值指令的语法格式为, assignin %跨空间赋值指令 3.3.3 子函数和私用函数 在MATLAB中,一个M文件函数中只包含一个主函数,但是可以包含多个子函数,这样的子函数只能专属与这一个M函数文件,故又称之为私用函数 3.4 串(表达式)演算函数 串演算函数是用来执行字符串所代表的函数,其优点在于可以在函数运行中修改所执行的指令和参数,提高计算的灵活性。MATLAB提供了两种演算函数:一种是“串演算函数”eval,它具有对字符串表达式进行计算的能力;另一种是“函数句柄演算函数”feval,它具有对函数句柄进行操作的能力。本节将介绍EVAL和FEVAL这两个串演算函数指令。 3.4.1 EVAL EVAL指令的基本语法结构包括以下两种格式: (1)执行指定的运算。 y=eval(expression) 其中,参数expression为指定的运算 (2)调用函数文件,输出计算结果。 [a1, a
原创力文档

文档评论(0)