第6章 MATLAB程序设计.ppt
文本预览下载声明
6.1 M 文 件 所谓M文件,就是由MATLAB语言编写的,可在MATLAB工作空间中运行的程序源代码文件。 M文件的语法与C语言十分相似。 MATLAB附带了许多函数,使M文件的编写更简便易行。 M文件可以分为脚本文件(Script)和函数文件(Function)两种。 M文件不仅可以在MATLAB的程序编辑器中编写,也可以在其他的文本编辑器中编写,并以“M”为扩展名加以存储。 6.1.1 脚本文件 脚本式文件类似于DOS下的批处理文件,不需要在其中输入参数,也不需要给出输出变量来接受处理结果,只是若干命令或函数的组合,用于执行特定的功能。 脚本的操作对象为MATLAB工作空间内的变量,并且在脚本执行结束后,脚本中对变量的一切操作均会被保留。 在MATLAB语言中也可以在脚本内部定义变量,且该变量将会自动加入到当前的MATLAB工作空间中,可以为其他的脚本或函数引用,直到MATLAB关闭或采用一定的命令将其删除。 6.1.2 函数式文件 函数需要给定输入参数,并能够对输入变量进行若干操作,实现特定的功能,最后给出一定的输出结果或图形等,其操作对象为函数的输入变量和函数内的局部变量等。函数文件通常包含以下4个部分: (1)函数题头 (2)帮助信息 (3)函数体 (4)注释部分 【例6.2】举例说明一个完整的函数式M文件包含哪些部分 解 定义一个完整的函数如下: function s=exm6_2(n) %求1到n的和 %调用方式s=exm6_2(n) %参数说明:n为任何正整数 s=0; % 初置累加计数器 for i=1:n % for 循环 s=s+i; end s; % 返回累加计数器内容 在M文件编辑器输入完,并保存为exm6_2.m。 6.2 程序设计中的变量与语句 在MATLAB程序设计中使用比较多的就是各种类型的变量与数据,在进行程序设计之前,首先应当对这些变量的定义和数据类型的约定进行一定的了解,这样才能在程序设计过程中灵活应用相应的变量和数据类型。 6.2.1 变量类型 1.变量命名的原则 (1)必须以字母开头。 (2)可以由字母、数字、下画线混合组成。 (3)字符长度不应超过31个。 (4)不能与系统保留字重名,例如命令名、函数名等。 (5)不能用特殊的字符,如数学运算符等。 2.局部变量和全局变量 每个函数体内都有自己定义的变量,这些变量不能被其他函数及MATLAB工作空间访问,这些变量称为局部变量。 局部变量的使用是不需要定义的 在多个函数和MATLAB工作空间中使用变量,称为全局变量 需要用关键字global声明的变量。 3.特殊的变量 (1)变量ans (2)变量eps (3)变量realmax (4)变量realmin (5)变量pi (6)变量i、j (7)变量inf (8)变量NaN (9)变量computer (10)变量flops (11)变量version (12)变量date 6.2.2 基本语句 MATLAB可以认为是一种解释性语言,可以直接在MATLAB命令窗口输入命令,也可以在编辑器内编写应用程序,这样MATLAB软件对此命令或程序中各条语句进行翻译,然后在MATLAB环境下对它进行处理,最后返回运算结果。 MATLAB语言的基本语名结构有如下几种 1.赋值语句 2.比较语句 3.逻辑语句 1.赋值语句 赋值语句的格式为: 变量名列表=表达式 其中,等号左边的变量名列表为MATLAB语句的返回值,等号右边是表达式的定义,它可以是MATLAB允许的矩阵运算,也可以是函数调用。 在调用函数时MATLAB允许一次返回多个结果,这时等号左边是用[]括起来的变量列表,例如,[X,Y,Z] = peaks;。 2.比较语句 MATLAB提供的比较运算符有:(小于)、=(小于等于)、(大于)、=(大于等于)、= =(等于)、~ =(不等于)。 比较两个元素的大小,结果为“1”表明为真,结果为“0”表明为假。 MATLAB还提供了all()和any()两个函数来进行比较运算。 3.逻辑语句 在MATLAB语言中,如果一个数的值为0,则可以认为它为逻辑0,否则为逻辑1。 假设A和B均为n行m列的矩阵,则在MATLAB下定义了如下的逻辑运算: 与运算 或运算 非运算 异或运算 6.3 数 据 类 型 MATLAB中的数据类型最大的特点是每种类型都以数组为基础 在MATLAB中主要有6种数据类型,分别是: char(字符) double(双精度数值) sparse(稀疏数据) storage(存储类型) cell(单元数组
显示全部