【 MATLAB 】程序流程控制语句格式简记
目录
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 】程序流程控制语句格式简记相关推荐
- 《MATLAB图像处理375例》——1.8 MATLAB程序流程控制结构
本节书摘来自异步社区<MATLAB图像处理375例>一书中的第1章,第1.8节,作者:MATLAB技术联盟著,更多章节内容可以访问云栖社区"异步社区"公众号查看 1.8 ...
- MATLAB学习笔记之matlab程序流程控制
MATLAB程序流程控制 顺序结构程序 程序和程序设计 程序的三种基本结构 脚本文件和函数文件 文件的建立 顺序结构 数据的输入 数据的输出 程序的暂停 a=input('a='); b=input( ...
- PLC中ST语言的几种程序流程控制语句
PLC中ST语言的几种程序流程控制语句 ST语言是IEC61131-3中规定的5中标准语言之一,目前常用见品牌的PLC都支持这种语言(施耐德,AB可以直接选择创建该类型的程序段或者功能块,西门子的略微 ...
- MATLAB教程三:MATLAB程序流程控制
文章目录 3.1 顺序结构 3.2 选择结构 3.3 循环结构 3.4 函数文件的定义与调用 3.5 函数参数与变量的作用域 3.1 顺序结构 文件的建立: 文件分为: 脚本文件:是可在命令行窗口直接 ...
- 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(' ...
- matlab之程序流程控制简单介绍
MATLAB中的程序流程控制语句有: 1.分支控制语句(if结构和switch结构) 2.循环控制语句(for循环.while循环.continue语句和break语句) 3.程序终止语句(retur ...
- matlab微分的语句格式,偏微分差分四种格式的matlab程序.doc
偏微分差分四种格式的matlab程序.doc 偏微分差分四种格式的matlab程序 (1)Lax-Fridrichs格式 function u = LaxFridrichs(a,dt,n,x1,x2, ...
- matlab转向梯形优化设计,转向梯形优化设计matlab程序.doc
转向梯形优化设计matlab程序.doc -WORD格式-可编辑-优化计算 MATLAB 程序首先,将目标函数写成 M 文件,其程序语句如下: function f = fun (x)global K ...
- Python程序流程控制
程序流程控制 实验一 程序流程控制 实验一 程序流程控制 一.利用程序流程控制语句打印运行效果如图所示的九九乘法表,要求:关键语句要有注释 实现代码 #九九乘法表 for i in range(1,1 ...
最新文章
- R语言实战 - 基本统计分析(2)- 频数表和列联表
- Linux 之父归来!
- jQuery ajax简单案例-验证用户名是否可用
- ASP.NET Core 6.0对热重载的支持
- Python基础第一天
- 筛选末位数字为1或5_看看广州示范性高中排行榜,怎么填报志愿?如何运用末位考生分数...
- [网络]------TCP UDP HTTP Socket 区别
- python登录网页账号密码_遇到需要登录的网站怎么办?学好python,用这3招轻松搞定...
- Tomcat 工作原理【转】
- android sendmessage和post的区别,Handler的sendMessage和postDelay的区别
- Redis 更新(set) key值 会重置过期时间问题
- 【2031】求一元三次方程的解
- soapUI 接口测试断言
- 手机app测试用例怎么写?手机app测试点有哪些?
- Java字符串排序(根据字节及字符长度进行排序)
- elementUI select 默认选中
- 100 余个超实用网站
- hash冲突的解决方法
- UIKit的简单入门介绍
- 考研英语从句详细总结
热门文章
- Printed Exception strings - what do all those flags mean?(转)
- java 底层方法_底层方法测试--【Java】
- idae 格式化代码 设置eslint_vscode 中格式化代码[vue2支持,插件ESLint、Prettier、Vetur]...
- html响应式布局media,JS中使用media实现响应式布局
- python 信息检索,python信息检索代码_信息检索_倒排记录表合并算法实现(python)...
- r语言ggplot怎么把多个维度数据合并在一个图中表示_R语言作图——Histogram
- linux文件的权限模式,Linux文件权限和访问模式
- php ecos,php
- 控制工程matlab实验报告小结,控制工程MATLAB实验报告.doc
- 需要单机还是集群部署_5000W如何玩转Filecoin市场 部署最符合企业的集群模式