第2章MATLAB程序设计.ppt
《第2章MATLAB程序设计.ppt》由会员分享,可在线阅读,更多相关《第2章MATLAB程序设计.ppt(31页珍藏版)》请在课桌文档上搜索。
1、第2章 MATLAB程序设计,本章要点 M文件的建立与调试方法 M文件的程序流程语句 函数文件的建立与调用 应用程序设计教学时数 2学时,2.1 M文件,一、M文件的建立 M文件是由命令或函数构成的文本文件,可以用任何文本编辑程序来建立和编辑,一般常用且最为方便的是使用MATLAB提供的文本编辑器。M文件有命令文件(也称主程序文件)和函数文件两种,命令文件可包含多个函数文件。1打开文本编辑器打开MATLAB文本编辑器有以下三种方法:1)菜单操作:单击操作桌面的File菜单,再单击NewM-file命令;2)命令操作:在命令窗口输入命令edit,单击Enter键;3)命令按钮操作:单击操作桌面工
2、具栏上的新建文件按钮。,2建立新的M文件 在文本编辑器的文档窗口输入文件内容,输入完毕后,选择文本编辑器窗口File菜单的Save或Save As命令存盘,默认名字是Untitled。注意,M文件存放位置一般是MATLAB缺省的用户工作目录,如果要选择别的目录,则应该将该目录设定为当前目录或将其加到搜索路径中,以便于文件查找。3运行M文件 输入文件内容并检查后,单击F5或文本编辑器的Debug Save and Run,在出现的Save file as对话框中,输入文件名myfile.m(以上例为例),单击“保存”,M文件自动存盘后运行。,4打开已有的M文件 打开已有的M文件,也有三种方法:1
3、)菜单操作:单击操作桌面或文本编辑器的File Open选项,则打开Open或Open File窗口,再选择要打开的文件;2)命令操作:在命令窗口输入命令edit,回车后则打开指定的M文件。如果文件不在当前路径下,还需在文件名前加上路径。例如打开上例的文件,可在命令窗口的提示符后输入edit myfile.m;3)命令按钮操作:单击操作桌面工具栏上的打开文件按钮,则打开Open或Open File窗口,再选择要打开的文件。,二、M文件的调试,1直接调试法1)如果在错误信息中指出了出错的行号,可先根据错误信息检查该语句是否存在语法错误或运行中变量尺寸不一致等情况。2)检查所调用函数或命令的拼写是
4、否正确,括号(包括方括号和圆括号)是否配对,各种流程控制语句是否匹配(如for与end、while与end、switch与end等)。3)检查所调用的函数或载入的数据文件是否在当前目录或搜索路径上。4)将重点怀疑的命令行后的分号删除,使得计算结果能够实时地显示在屏幕上,作为查错的依据,根据显示的结果判断问题的所在。5)如果怀疑某个函数文件有问题,可以在该函数文件的函数定义行前加“%”,使其函数体成为命令文件(因为命令文件中的变量存储在工作空间中,可以在工作空间窗口和数组编辑器观察修改),调好后再改回函数文件。,2文本编辑器的编辑功能,(1)Go To.当选定Go To.选项时,弹出如图2-2所
5、示的对话框,输入行号单击【OK】后,光标自动移到指定的行上,并将该行作为当前行。(2)Set/Clear Bookmark 该选项为“设置或清除书签”。,3文本编辑器的调试功能,(1)设置断点 设置断点是高级语言中程序调试的重要手段之一,断点是在程序特定位置设置的中断点,当程序运行至断点处时会暂停运行,此时可通过检查相关变量的内容等方法确定程序的运行是否正确。图中的红色菱形点即为设置的断点。,(2)Debug菜单1)Step:单步执行。每单击一次,程序运行一次,但不进入函数。2)Step in:单步运行。遇到函数时进入函数内,仍单步运行。3)Step out:停止单步运行。如果是在函数中,跳出
6、函数;如果不在函数中,直接运行到下一个断点处。4)Save and Run:存储文件并从第1行开始执行程序,当遇到第1个断点时暂停运行,并变为Continue;单击F5或【Continue】则继续运行。5)Go Until Cursor:从当前位置运行到光标所在的位置。,2.2 程序流程语句,一、if语句 1单分支if语句 最简单的选择结构语句,其基本格式为:if 表达式 语句组 end 说明:表达式多为关系或逻辑表达式。如果表达式为真(非零),就执行if和end之间的语句组,然后再执行end之后的语句;如果表达式为假(零),就直接执行end之后的语句。,2双分支if语句 前面提供的单分支if
7、语句只能处理较简单的条件,功能不全面。为此MATLAB还提供了双分支if语句结构。其基本格式为:if 表达式语句组else语句组end 说明:如果表达式为真(非零),则执行语句组1,再执行end后面的语句;如果表达式假(为零),则先执行语句组2,再执行end后面的语句。,3多分支if语句 当有三个或更多的选择时,可采用if语句的嵌套,也可以采用多分支if语句。其基本格式为:if 表达式 语句组 elseif 表达式 语句组 elseif 表达式n 语句组n else 语句组n+1 end,说明:先判断表达式1的值,若为真,则执行语句组1,执行完语句组1后,跳出该选择结构,继续执行end 后的语
8、句;当表达式1的值为假时,跳过语句组1,进而判断表达式2,若为真,则执行语句组2,然后继续执行end 后的语句;如果表达式2的值也为假,则跳过语句组2,继续判断表达式3,如此下去,若所有表达式都为假,则执行else后的语句组n+1,再执行end 后的语句。else语句 可以缺省。,二、switch语句,switch语句是多分支选择语句。if语句只有两个分支可供选择,如果分支较多,则嵌套的if语句层数多,程序冗长而且可读性降低。switch语句的基本格式为:switch 表达式case 数组语句组case数组2语句组 case 数组n 语句组n otherwise 语句组n+1 end 说明:先
9、计算表达式的值,再按顺序与case语句后面的数组值进行比较,如果相等则执行该组语句,然后执行end后的语句,不再继续比较。当表达式的值不等于任何一个case语句后面的数组值时,程序将执行otherwise语句后 的语句组,再执行 end后的语句。注意:这种情况下缺省otherwise 语句,程序会提示出错。,【例】已知学生的名字和百分制分数。要求根据学生的百分制分数,分别采用“满分”、“优秀”、“良好”、“及格”和“不及格”等表示学生的学习成绩。,clearfor k=1:10a(k)=89+k;b(k)=79+k;c(k)=69+k;d(k)=59+k;endc=d,c;A=cell(3,5
10、);A(1,:)=Jack,Marry,Peter,Rose,Tom;A(2,:)=72,83,56,94,100;for k=1:5 switch A2,k case 100 r=满分;case a r=优秀;case b r=良好;case c r=及格;otherwise r=不及格;endA(3,k)=r;endAA=Jack Marry Peter Rose Tom 72 83 56 94 100 及格 良好 不及格 优秀 满分,三、while语句,while语句是条件循环语句,在条件(多为关系表达式)控制下重复执行,直到条件不成立为止。while循环的一般形式是:while 表达式
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 程序设计

链接地址:https://www.desk33.com/p-259570.html