- 1、本文档共32页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]ch02MATLAB程序设计
MATLAB程序设计 刘东毅 天津大学数学系 本章主要包括以下内容: M文件 程序控制结构 函数文件 程序调试 §1 M文件 所谓文件,就是由一些具有特定功能语句的集合,简称为M文件,缺省文件后缀是“ .m ”。M文件根据调用方式的不同分为两类: 脚本(Script)文件 函数(function)文件 脚本(Script)文件 结构简单、功能少,其主要特征是该文件运行后,产生的所有变量都驻留在MATLAB的基本工作空间中。 其作用相当于其它语言(C/C++ 、Fortran 等)中的“主函数”。 函数(function)文件 通过关键词 function来定义,结构复杂、功能强、应用灵活。具有输入和输出变量(宗量或形式参量)。该文件运行后,所产生的变量除输入和输出变量外都驻留在专门为此函数开辟的函数空间中,只通过输入和输出变量在MATLAB的基本工作空间和外界发生联系,故封装性很好。 【例1.1】编写函数文件来计算1000以内的Fibonnacci 数列,即 首先点击在Desktop 操作界面左上角打开文件图标或点击菜单条【File:New】打开文件编辑/调试器,编写程序;(见下图) 以函数名fibonnacci存盘,这一点很关键,这也是与脚本文件的重要区别,这样就定义了一个名为fibonnacci的新函数 指令窗中输入[F,nF]=fibonnacci(1000),与MATLAB系统自带的函数一样使用 。 较完整的函数调用形式 首先编写一脚本文件作为 “主函数” (主文件) N=1000; [F,nF]=fibonnacci(N);%调用函数 然后存储该文件:fib0(原则上任意取名,但第一个字符不要用数字)。最后在指令窗口执行该“主函数” fib0。在运行过程中,fib0调用函数文件fibonnacci 。 §2 MATLAB程序控制流 在MATLAB程序语言中,有八种控制程序运行的流结构(flow control),它们分别类属于循环、分支和顺序三大结构。这里分别介绍如下: 2.1顺序结构 顺序结构就是各种MATLAB语句按先后次序排列而成,执行时中间不发生任何跳转,按语句出现的顺序运行。 2.2 循环结构 2.2.1 for – end 型循环结构 其语法为: for x = array (整数数组) 语句组 end 其中x称为循环变量,循环次数依整数数组array的列数决定。for 和end之间的语句组称为循环体。进一步亦可写成如下形式: 常用形式 for index = start value : increment : end value statements end 【例2.1】一个简单的for循环示例。 for ii = 1 : 10 x(ii) = ii; end x x = 1 2 3 4 5 6 7 8 9 10 for i = [2 3 5 8 3 1]; x(i) = i; end x= 1 2 3 0 5 0 0 8 【例2.2】for循环示例-循环变量为数组的形式。 clear A = [7 7 3 4 1;5 2 1 6 10] for k = A k x(k) = k end 说明:在进行循环时,循环变量k依次被赋给矩阵A的第一列,第二列,第三列,……,直到最后一列,循环次数等于矩阵A的列数。 2.2.2 while – end 型循环结构 其语法为: while expression(表达式) statements(循环体) end 当表达式的逻辑值是真时,则执行循环,否则跳出循环。若expression是逻辑数组时,则所有元素均为真时,才会执行循环体。若expression是数值数组,则所有元素实部均非零时,才会执行循环体。若expression是空数组,则认为expression的逻辑值是假,不会执行循环体。 2.3分支结构 3.3.1 if – else – end型分支结构 其基本结构为: if (逻辑)表达式 语句体1 else 语句体2 end 表达式的逻辑值是真时,则执行语句体1,否则执行语句体2。 此基本结构的两种变形,单分支结构: if 逻辑表达式 (logical expression) 语句体 end 表达式的逻辑值是真时,则执行语句体,否则跳过此分支结构,执行紧接此分支结构的下一条语句。 多分支结构(复合结构): if 逻辑表达式1 语句体1 elseif 逻辑表达式2 语句体2 ……
文档评论(0)