快使用Ctrl+D收藏本站!本站早已不再维护,择期将关闭本站!!本站资源已全部失效,请勿打赏!!PLC培训创业官网 苏州实操派科技-点击访问-

MATLAB自学笔记(十一):MATLAB编程基础2-控制流

matlab仿真 파충충好气气 4057℃ 0评论

一、MATLAB的控制流

与其他平台或语言类似,MATLAB中控制流结构包括:

顺序控制、if-else-end分支结构、switch-case结构、try-catch结构、for循环结构和while循环结构

1.顺序结构

新建一个脚本文件(.m文件)、命名并保存

点击运行标志或按F5,此时返回命令行窗口,可以看见如下字样

TEMP是我刚才创建的文件名,接着下面一行是运行结果

2.if-else-end分支结构

常见的三种用法如下

举例如下,判断一个数字是否大于0.5:

运行结果如下:

3.switch-case结构

在脚本文件中写入如下代码,点击运行

返回命令行窗口

例如输入数字5,点击回车

注:与C语言相比,MATLAB中的switch结构不用输入冒号分号,也不用default但是用otherwise

input函数表示输入,当M文件运行到此处时会暂停,等待来着命令行窗口的输入信息,输入完成后要点击‘Enter’

4.try-catch结构

try-catch结构的具体用法如下:

  • 只有当MATLAB执行命令组1错误时,才会执行命令组2,即命令组2是命令组1的备用程序
  • 当命令组1出错时,可用lasterr函数函数查询出错原因。若返回空字符串,则表明没有错误
  • 若命令组1和2都有错,则MATLAB会终止该结构

举例如下,在M文件中输入以下程序

点击运行,返回命令行窗口

5.for循环结构

举例如下,求x = sin(nkpi/360)的值,其中 n 属于1 : 10, k属于1 : 4:

运行结果如下

注:程序中分号的有无直接影响着输出内容的多少

MATLAB中for循环不用加括号,但是每一级for循环都需要对应end指令

冒号’:’是一种基础符号,1:10表示间隔为1、从1到10的一个数组;1:2:10是间隔为2的数组

6.while循环结构

同其他语言一样,while循环主要用在一个逻辑条件下重复执行且次数不定的条件,这是它与for循环的最大区别。其基本用法如下

举例如下,求解1:100的和

结果如下

二、控制流的常用指令

1.return指令

  • 通常,在被调用函数执行完之后,MATLAB会自动将控制权移交给主函数或者命令行(Commands)窗口
  • 但是如果在被调用函数中插入return指令,可以强制MATLAB执行该函数并把控制权转移

2.input和keyboard指令

input指令会将MATLAB的控制权暂时转交给用户,用户通过键盘输入数值、字符串、表达式等,并按‘Enter’键将内容输送到工作区

  • Value = input(‘message’);将用户输入的内容输入给变量Value。可以输入数值、字符串等各种形式的数据
  • Value = input(‘message’,’s’):将用户输入的变量以字符串的形式输送给变量。无论输入什么格式的数据,都会以字符串的形式赋值给变量

指令中‘message’指的是显示在屏幕上的字符串

keyboard指令会将控制权交给用户,用户可以通过键盘输入各种合法的MATLAB指令。只用当用户输入完成,并输入return时,控制权才会返回给MATLAB、

input和keyboard指令的不同之处在于:keyboard指令允许输入任意多个MATLAB指令,而input指令只允许用户输入赋值给变量的‘值’

3.yesinput指令

yesinput指令是一个只能输入的指令,它提供的输入值是一个默认量,并可以对输入范围进行检查,其用法如下

  • value = yesinput(‘Prompt’,Default,Possib)
  • yesinput指令涉及用户与MATLAB之间的交互,因此无法在notebook程序中运行
  • Prompt为文字提示,Default为设置的默认值,Possib为可选项
  • 当yesinput指令运行后,若用户不输入任何值,则变量value将接收默认值

4.pause指令

pause指令的功能为控制文件的暂停与恢复

  • pause:暂停执行文件,等待用户按任意键继续
  • pause(n):在继续执行文件之前,暂停n秒

5.continue指令

continue语句把控制传给下一个在其中出现的if或while循环的迭代,忽略任何循环体中保留的语句。

在循环嵌套中,continue把控制传给下一个for或while循环所嵌套的迭代

运行结果:

5.break指令

在for或while循环中,有时并不需要运行到最后一步循环,用户就已经得到了想要的结果,此时可用break指令来对其循环进行终止

运行结果:

转载请注明:燕骏博客 » MATLAB自学笔记(十一):MATLAB编程基础2-控制流

赞赏作者

微信赞赏支付宝赞赏

喜欢 (0)or分享 (0)

如果您喜欢本站文章,感觉本站的资源对您有帮助,请狠狠点击下面

每累计赞助40元,即可让本站按最低配置运行一个月,感谢您的支持!

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址