文档详情

第4章MATLAB编程基础讲述.ppt

发布:2017-03-31约1.28万字共76页下载文档
文本预览下载声明
第4章 MATLAB编程基础 M文件 文件操作 流程控制语句 程序优化与调试 基本绘图 图像 函数绘图 (一)M文件 MATLAB输入命令有两种方法: 一是在MATLAB主窗口逐行输入命令,每个命令之间用分号或逗号分隔,每行可包含多个命令。 二是将命令组织成一个命令语句文集,使用扩展名“.m”,称为M文件。它由一系列的命令和语句组成。 当程序需要使用大量语句时,使用M文件非常方便,其编写和执行的效率远远高于从主窗口逐条输入语句的效率。 启动M文件 从命令窗口选择【新建】或【打开】,或在命令窗口输入“edit” 脚本文件和函数文件 脚本文件是一连串的MATLAB命令,它解决了运行指令较多时过于麻烦的问题,运行时只需在MATLAB命令窗口输入文件名或单击M文件编辑窗口的绿色三角图标。 函数文件的第一句可执行语句是以function引导的定义语句。函数文件可以接受输入变量,返回结果,且可以返回任意多个值。事实上,MATLAB提供的函数命令大部分都是由函数文件定义的。 函数文件基本格式 function[返回参数列表]=函数名(输入变量) %函数定义行 %H1行及帮助文档:解释此函数的功能 输入、返回变量格式的检测 函数主体及注释 函数体语句 例4-2 编写一个函数文件,实现对输入数值求平方的功能。 function y=fun1(x) y=x.^2; 脚本文件和函数文件的比较 脚本文件 函数文件 参数 没有输入参数,没有返回参数 可以接收和返回参数 数据 处理数据即为脚本中的数据,全局变量 产生局部变量,但可设为全局变量 应用 编程执行一连串的命令 可以扩充MATLAB函数库以供调用 局部变量和全局变量 M文件中的语句对整个MATLAB工作空间里的变量起作用,这样的变量称为全局变量。 局部变量是在函数体内部使用的变量,其影响范围只能在本函数体内,只在函数执行期间存在。 脚本文件过程中产生的变量均为全局变量,保存在内存工作空间。函数文件中产生的变量如果不是特别声明均为局部变量。 函数调用 函数调用有两种语法方式: 函数名 参数1 参数2 … 参数N; [返回参数1,返回参数2,… ,返回参数N]=函数名(参数1,参数2,… ,参数M)。 例4-4:举例说明两种参数传递方式。 A=pi; disp A A %显示结果为A,参数A以字符串形式传递 disp(A) 3.1416 %显示结果为pi的值,参数以值进行传递。 (二)文件操作 1. 打开文件 fid=fopen(文件名,‘打开方式’) 2. 关闭文件 关闭文件用fclose函数,调用格式为:sta=fclose(fid)。 3.在MATLAB中,读取二进制文件的命令是fread,其调用格式为: A=fread(fid,count,precision) 使用fread读取该文件后,得到的为代码对应的数值数组 ,使用char()命令可以将数值数组转换成程序代码 。 (三) MATLAB的流程控制语句 通常MATLAB程序按照前后顺序执行,但在实际中,常会运到很多情况需要重复执行一段语句,多次写同一组命令非常麻烦,为此MATLAB提供了多种流控制语句: 循环控制语句 条件控制语句 其它流程控制语句 1.循环控制语句 1)for循环语句 for语句执行固定次数的循环,将循环条件的初值、判别和变化放在循环的开头。for循环语句的一般形式是: for (计数器=初值:增量:终止值) 执行语句,…,执行语句 end 2)while循环语句 while循环函数用于当循环过程不满足某个指定条件时终止的情况就,此时事先并不能确定循环的执行次数。while循环的格式为 while (逻辑表达式) 执行语句 end 例:利用for循环求1!+2!+3!+ ... +5!的值 sum=0; for i=1:5 pdr=1; for k=1:i pdr=pdr*k; end sum=sum+pdr; end 例:找出近似级数 中误差大于1%之前的最大的x值(精确到小数点后两位位置) 其MATLAB程序为: x=0; while(exp(x)-1-x-x^2/2-x^3/6=0.01) x=x+0.01; end disp(x-0.01) 2.条件控制语句 1) if、else、elseif语句 if语句用来检查逻辑运
显示全部
相似文档