目录

if-else-end 结构

switch - case - otherwise - end 结构

for 循环

while 循环

try - catch 结构

其他中断、暂停语句


下面主要记录matlab中的程序流程控制格式:


if-else-end 结构

1.

if expr      %expr为表达式,如果成立,则执行到end为止的所有commands,否则不执行commands;end

2.

if expr1commands1;elseif expr2commands2;elsecommands3;end

根据程序分支的多少,elseif的个数可以有0个到多个。


switch - case - otherwise - end 结构

switch exprcase value1command1;case value2command2;...case valuekcommandk;otherwisecommands;
end

otherwise建议始终保留,commands可以为空语句;


for 循环

for ix = arraycommands;
end

在命令窗口中输入以下代码,体会for循环的用法。


for i = 1:10a = i;
end

clear;
clc;
for i = (1:10)'a = i;
end

for i = [1 2 3;4 5 6;7 8 9]a = i;
end

从运行结果可以看出,for循环在MATLAB中和其他语言中还是有些差别的。MATLAB的for循环的机制是遍历array的列,无论这个array是向量还是矩阵。如果array是行向量,那么for就遍历它的每个元素;如果是列向量,for循环就循环一次,即遍历列向量本身;如果array是矩阵,那么for循环就遍历它的每一个列,循环n次,n是array的列数。此外,如果array是三维矩阵,那么for循环先遍历第一页的所有列,之后是第二页的所有列,等等。


while 循环

while expr   //expr为真执行commands,否则退出循环commands;
end

try - catch 结构

try commands1;
catch MEcommands2;
end

该结构意义是执行commands1,如果不发生错误,则不用执行commands2;如果执行commands1的过程中发生了错误,那么commands2就会被执行,同时ME记录了发生错误的相关信息。


其他中断、暂停语句

MATLAB在循环体内还可以利用 continue 语句跳出位于它之后的循环体的其他指令,而执行循环的下一次迭代:

clear;
clc;
for ix = 1:5if ix == 3continueenddisp( ['ix =', num2str(ix)] )
end

MATLAB还可以用break语句结束包含该指令的while或for循环体,用于跳出循环。

例如:

clc
clear
jx = 3;
for i  = 1:3if i == 2disp( ['i = ', num2str(i)] );breakdisp( ['jx = ', num2str(jx)]);end
end

当i = 2时,执行if - end结构中的内容,可见jx = 3,没有显示,因为程序见到break就跳出了循环。

最后一个:

pause(n)可以使程序暂停n秒后再继续执行;pause指令使程序暂停执行,等待用户按任意键继续。


最后,我在《MATLAB高效编程技巧与应用》这本书时,对于break指令,书中说:break语句还可以在if -end,switch - case,try - catch结构中使用,还给出了如下的例子:

clc
clear
jx = 3;
ix = 6;
if jx == 3disp( ['i = ', num2str(i)] );breakdisp( ['jx = ', num2str(jx)]);
end

可执行的时候,出现如下:

可见,这种说法是错误的,这里在这里指出来。

【 MATLAB 】程序流程控制语句格式简记相关推荐

  1. 《MATLAB图像处理375例》——1.8 MATLAB程序流程控制结构

    本节书摘来自异步社区<MATLAB图像处理375例>一书中的第1章,第1.8节,作者:MATLAB技术联盟著,更多章节内容可以访问云栖社区"异步社区"公众号查看 1.8 ...

  2. MATLAB学习笔记之matlab程序流程控制

    MATLAB程序流程控制 顺序结构程序 程序和程序设计 程序的三种基本结构 脚本文件和函数文件 文件的建立 顺序结构 数据的输入 数据的输出 程序的暂停 a=input('a='); b=input( ...

  3. PLC中ST语言的几种程序流程控制语句

    PLC中ST语言的几种程序流程控制语句 ST语言是IEC61131-3中规定的5中标准语言之一,目前常用见品牌的PLC都支持这种语言(施耐德,AB可以直接选择创建该类型的程序段或者功能块,西门子的略微 ...

  4. MATLAB教程三:MATLAB程序流程控制

    文章目录 3.1 顺序结构 3.2 选择结构 3.3 循环结构 3.4 函数文件的定义与调用 3.5 函数参数与变量的作用域 3.1 顺序结构 文件的建立: 文件分为: 脚本文件:是可在命令行窗口直接 ...

  5. MATLAB程序流程控制

    1.条件结构 输入一个百分制成绩,输出成绩等级A.B.C.D.E.其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E. e.g. if语句 a=input(' ...

  6. matlab之程序流程控制简单介绍

    MATLAB中的程序流程控制语句有: 1.分支控制语句(if结构和switch结构) 2.循环控制语句(for循环.while循环.continue语句和break语句) 3.程序终止语句(retur ...

  7. matlab微分的语句格式,偏微分差分四种格式的matlab程序.doc

    偏微分差分四种格式的matlab程序.doc 偏微分差分四种格式的matlab程序 (1)Lax-Fridrichs格式 function u = LaxFridrichs(a,dt,n,x1,x2, ...

  8. matlab转向梯形优化设计,转向梯形优化设计matlab程序.doc

    转向梯形优化设计matlab程序.doc -WORD格式-可编辑-优化计算 MATLAB 程序首先,将目标函数写成 M 文件,其程序语句如下: function f = fun (x)global K ...

  9. Python程序流程控制

    程序流程控制 实验一 程序流程控制 实验一 程序流程控制 一.利用程序流程控制语句打印运行效果如图所示的九九乘法表,要求:关键语句要有注释 实现代码 #九九乘法表 for i in range(1,1 ...

最新文章

  1. R语言实战 - 基本统计分析(2)- 频数表和列联表
  2. Linux 之父归来!
  3. jQuery ajax简单案例-验证用户名是否可用
  4. ASP.NET Core 6.0对热重载的支持
  5. Python基础第一天
  6. 筛选末位数字为1或5_看看广州示范性高中排行榜,怎么填报志愿?如何运用末位考生分数...
  7. [网络]------TCP UDP HTTP Socket 区别
  8. python登录网页账号密码_遇到需要登录的网站怎么办?学好python,用这3招轻松搞定...
  9. Tomcat 工作原理【转】
  10. android sendmessage和post的区别,Handler的sendMessage和postDelay的区别
  11. Redis 更新(set) key值 会重置过期时间问题
  12. 【2031】求一元三次方程的解
  13. soapUI 接口测试断言
  14. 手机app测试用例怎么写?手机app测试点有哪些?
  15. Java字符串排序(根据字节及字符长度进行排序)
  16. elementUI select 默认选中
  17. 100 余个超实用网站
  18. hash冲突的解决方法
  19. UIKit的简单入门介绍
  20. 考研英语从句详细总结

热门文章

  1. Printed Exception strings - what do all those flags mean?(转)
  2. java 底层方法_底层方法测试--【Java】
  3. idae 格式化代码 设置eslint_vscode 中格式化代码[vue2支持,插件ESLint、Prettier、Vetur]...
  4. html响应式布局media,JS中使用media实现响应式布局
  5. python 信息检索,python信息检索代码_信息检索_倒排记录表合并算法实现(python)...
  6. r语言ggplot怎么把多个维度数据合并在一个图中表示_R语言作图——Histogram
  7. linux文件的权限模式,Linux文件权限和访问模式
  8. php ecos,php
  9. 控制工程matlab实验报告小结,控制工程MATLAB实验报告.doc
  10. 需要单机还是集群部署_5000W如何玩转Filecoin市场 部署最符合企业的集群模式