MATLAB程序设计:函数文件名与M文件解析

需积分: 15 0 下载量 123 浏览量 更新于2024-08-20 收藏 129KB PPT 举报
"MATLAB第四章函数文件名及程序设计" MATLAB中的函数文件名通常是函数名加上`.m`扩展名的形式,例如`myFunction.m`。不过,函数文件名并不一定要与函数名完全一致,只要文件内部定义的函数头与调用时使用的名称匹配即可。MATLAB通过函数文件名来查找并执行相应的函数代码。 MATLAB教程中提到的第二章作业涉及到冒号运算符的使用。冒号(`:`)在MATLAB中可以用于生成向量。例如,要生成一个包含所有字母的字符串,可以从'A'到'z'使用冒号:`astr=str1:1:str2`或`astr='A':1:'z'`。同时,可以利用冒号生成不同尺寸的全1矩阵,如将1×5的全1向量扩展为4×5,再转换为2×10的矩阵:`z=ones(1,5); z(5,5)=1; z(:)=1;`或`z(2:4,:)=1;`。 在MATLAB程序设计中,M文件是基本的代码单元。M文件分为两类:命令式文件(脚本script)和函数式文件(function)。命令式文件不包含输入输出参数,可以直接运行,它们可以访问工作空间中的数据,且变量为全局变量。而函数式文件具有输入输出参数,不能直接运行,必须通过函数调用执行,其内部创建的变量为局部变量,不能直接影响工作空间。 编辑和运行M文件在MATLAB环境中非常简单,可以通过MATLAB自带的编辑器`edit`命令,或者在编辑器窗口中直接创建和打开。此外,MATLAB支持多种程序控制结构,如: 1. **顺序结构**:按照代码的书写顺序依次执行。 2. **选择结构**:包括条件语句(如`if...else...end`)和开关语句(如`switch...case...end`),根据条件执行不同的代码块。 3. **循环结构**:主要有`for`循环和`while`循环,用于重复执行某段代码直到满足特定条件为止。 例如,生成方波序列的代码展示了数组操作和`reshape`函数的使用。方波序列可以通过组合相同的子序列构造,如`A=[0,0,0,0,0,1,1,1,1,1]; B=[A,A,A,A,A,A,A,A,A,A];`或者利用`meshgrid`和`reshape`:`[B1,B]=meshgrid(A); C=reshape(B,1,100);`这里的`reshape`函数改变了矩阵的行数和列数,但不改变元素的存储顺序。 掌握这些基本概念和操作是MATLAB编程的基础,对于理解和编写更复杂的MATLAB程序至关重要。在提交作业时,如果提供了多种解法,邮件主题应注明,以便老师评估和反馈。