M文件和流程控制(matlab)..

合集下载

实验三_M_文件及_MATLAB_程序设计与调试

实验三_M_文件及_MATLAB_程序设计与调试

实验三M 文件及MATLAB 程序设计与调试一、实验目的全面掌握在MA TLAB 下进行程序设计的有关问题,具体涉及到M 脚本文件和M 函数文件的编写、全局和局部变量的使用、流程控制结构、提高程序执行效率的设计技术、程序调试等问题。

二、实验内容1、关于M 脚本文件和M 函数文件MATLAB 的M 文件有两类:脚本文件和函数文件。

(1)脚本文件——将原本要在MATLAB 的指令窗口中直接输入的语句,放在一个以.m 为后缀的,称为脚本文件中。

有了脚本文件,可直接在MATLAB 中输入脚本文件名(不含后缀)。

MATLAB 会打开这一脚本文件,并依次执行脚本文件中的每一条语句,这与在MATLAB 中直接输入语句的结果完全一致。

(2)函数文件——它的第一行必须是函数定义行。

M 函数文件由5 部分构成:◆函数定义行◆H1 行◆函数帮助文本◆函数体◆注释注意:在函数文件中,除了函数定义行之外,其它部分都是可以省略的。

但作为一个函数,为了提高函数的可用性,应加上H1 行和函数帮助文本,为了提高函数的可读性,应加上适当的注释。

例如:function y = mean(x)% MEAN Average or mean value.% For vectors, MEAN(X) is the mean value of the elements in X.% For matrices, MEAN(X) is a row vector containing the mean value of each column.[m,n]=size(x);if m==1% Determine whether x is a vectorm=n;endy = sum(x)/m;①函数定义行:function y = mean(x)function 为函数定义的关键字,mean 为函数名,y 为输出变量,x 为输入变量当函数具有多个输出变量时,则以方括号括起;当函数具有多个输入变量时,则直接用圆括号括起。

matlab编程2

matlab编程2
18
第二节 程序控制结构
选择结构
选择结构 是根据给定的条件成立或不成立,分别执 行不同的语句. Matlab 用于实现选择结构的语句有 if -end语句 和 switch-end 语句
19
第二节 程序控制结构
if -end条件语句
单分支结构
if 条件表达式 语句组 end
双分支结构
If 条件表达式

input应用时,注意:
输入字符串时必须带单引号 单引号的输出:两个连续的单引号 若输入的是数、数学表达式,则in不能出现
11
第二节 程序控制结构
disp
数据的输出:disp
disp(X)
输出变量 X 的值,X 可以是数值矩阵或字符串
一次只能输出一个变量

>> A='Hello, Tom!'; >> disp(A) >> B=[1 2 3; 4 5 6; 7 8 9]; >> disp(B)
x=input(‘输入初值x=’);
n=input(‘输入迭代次数=’);
y(1)=x ; for k=1:n x=1/(x+1); y(k)=x;
function y=dd2(x,n) y(1)=x ; for k=1:n x=1/(x+1); y(k)=x; end
end
y
解:程序如下: function y=f(x)

语句组2
……
K=值m? 否 语句组n

语句组m
switch-end语句的 下一句
第二节 程序控制结构
switch-end 语句
关于 switch-end 语句的几点注解:

Matlab课件

Matlab课件

在命令窗口提示符后键入如下命令, 回车: >>example93 运行结果如图9-3所示:
图9-3
6阶拟合结果
三、函数文件
下例给出了一个典型的M文件函数。 function y=average(x) % AVERAGE求向量元素的均值 % 其中,X是向量,Y为计算得到向量元素的均值 % 若输入参数为非向量则出错 % 代码行 [m,n]=size(x); % 判断输入参数是否为向量 if (~((m==1)|(n==1))|(m==1)&(n==1)) % 若输入参数不是向量,则出错 error('Input must be a vector'); end % 计算向量元素的均值 y=sum(x)/length(x);
图9-5
序列的FT和DFT结果
从图9-5可见,序列的离散傅立叶变换DFT的确是其傅立叶变换FT在的N点等间 隔采样。这里做的是16点变换,读者也可尝试对其它的序列做任意点的傅立叶 变换。
第二节
M文件程序流程控制
一、分支结构 在许多情况下,需要根据不同的条件执行不同的语句,在 编程语言里,是通过分支结构实现的。Matlab语言提供的 分支结构有If-Else-End结构、Switch-Case结构、TryCatch结构。 1.If-else-end分支结构 If语句的基本语法结构有三种,分别如下: (1)if 表达式 Matlab语句体 end 关键词if后的表达式确定了判断条件,表达式必须首先计 算,只有当表达式结果为True时,语句体才被执行,否则 跳过if-end结构,执行end后面的语句。
在命令窗口给出向量x、y和阶数fitorder,如下所示: >>x=[0.1 0.14 0.2 0.23 0.34 0.45 0.55 0.6 0.67 0.7 0.8 1]; >>y=[2.2 2.5 3.4 4.4 5.6 6.5 7.0 7.5 8 9 10 11]; >>fitorder=4; 然后调用函数fitdone,即 >>fitdone(x,y,fitorder),回车后,运行结果如图9-4所示:

matlab的程序流程控制实验总结

matlab的程序流程控制实验总结

matlab的程序流程控制实验总结Matlab programming is a powerful tool that can be used to solve complex mathematical problems and analyze data. In order to fully utilize its capabilities, it is important to have a good understandingof program flow control in Matlab. Program flow control refers to the way in which the execution of a program is controlled in order to achieve the desired outcome. One of the most common ways to control the flow of a program in Matlab is through the use of loops. Loops allow you to iterate over a set of data or perform a series of operations multiple times. There are two main types of loops in Matlab: for loops and while loops. For loops are used when youknow the exact number of times you want to repeat a block of code, while loops are used when you want to repeat a block of code until a certain condition is met.在Matlab编程中,程序流程控制是一种强大的工具,可以用来解决复杂的数学问题和分析数据。

2.6 M文件及程序调试

2.6  M文件及程序调试

2012-8-7
2.建立新的M文件 在文本编辑器的文档窗口输入文件内容,输入完毕后, 选择文本编辑器窗口File菜单的Save或Save As命令存 盘,默认名字是Untitled。注意,M文件存放位置一般 是MATLAB缺省的用户工作目录,如果要选择别的目 录,则应该将该目录设定为当前目录或将其加到搜索 路径中,以便于文件查找。 3.运行M文件 输入文件内容并检查后,单击〈F5〉或文本编辑器的 Debug → Save and Run,在出现的Save file as对话 框中,输入文件名**.m,单击“保存”,M文件自动存 盘后运行。
三ቤተ መጻሕፍቲ ባይዱ参数的可调性
MATLAB在函数调用上有一个与一般高级语言不同之处,就 是函数所传递参数数目的可调性。凭借这一点,一个函数可完成 多种功能。在调用函数时,MATLAB用两个永久变量nargin和 nargout分别记录调用函数时的输入实参和输出实参的个数。只 要在函数文件中包含这两个变量,就可以准确地知道该函数文件 被调用时的输入输出参数个数,从而决定函数如何进行处理。
2012-8-7
编写一个函数文件test,比较输入一个参数、两个参
数和三个参数时的结果。 function apple=test(a,b,c) if nargin==1 apple=a; %当只有一个输入实参时,返回参数a elseif nargin==2 apple=a+b; %当有两个实参时,返回参数为a+b elseif nargin==3 apple=a+b+c; %当有三个输入实参时,返回实参a+b+c end
2012-8-7
2012-8-7
二、函数调用
函数文件编制好后,就可以调用函数进行计算了。函数调用 的一般格式为: [输出实参表]=函数名(输入实参表) 需要注意的是,函数调用时各实参出现的顺序、个数,应与 函数定义时形参的顺序、个数一致,否则会出错。函数调用时, 先将实参传递给相应的形参,从而实现参数传递,然后再执行函 数的功能。

第二部分 MATLAB程序设计

第二部分 MATLAB程序设计
调用格式: A=input(提示信息,选项); 注:‘s’选项,则允许用户输入一个字符串。 例如想输入一个人的姓名,可采用命令 xm=input('What''s your name:','s') 【例2】 求一元二次方程ax2 +bx+c=0的根。



a=input('a=?'); b=input('b=?'); c=input('c=?'); d=b*b-4*a*c; x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)] 将该程序以aa.m文件存盘,然后运行aa.m文件。



i=i+1; end if flag n=n+1; prime(n)=m; end end prime %变量prime存放素数
30
三.程序设计
pause 指令使程序运行停止,等待用户按任意键继续; input 指令提示用户从键盘输入数值、字符串或表达 式,并接受输入; disp指令在屏幕上显示字符串; echo on指令显示其后所有执行文件的指令;

y=0; i=1; while 1 %循环的条件为1,即循环条件总是满足的,这是 一个永真循环 f=1/(2*i-1); y=y+f; if y>3 break; end i=i+1; end n=i-1 y=y-f
28
三.程序设计
(二)循环结构
3. 循环的嵌套
如果一个循环结构的循环体又包括一个循环结构,就 称为循环的嵌套,或称为多重循环结构。

多重循环的嵌套层数可以是任意的。可以按照嵌套层 数,分别叫做二重循环、三重循环等。处于内部的循环 叫作内循环,处于外部的循环叫作外循环。

第4章 MATLAB程序流程控制

第4章  MATLAB程序流程控制

第4章 MATLAB程序流程控制
2.switch语句 switch语句根据表达式的取值不同,分别执行不 同的语句,其语句格式为:
第4章 MATLAB程序流程控制
(3) 多分支if语句: if 条件1 语句组1 elseif 条件2 语句组2 …… elseif 条件m 语句组m else 语句组n end
第4章 MATLAB程序流程控制
第4章 MATLAB程序流程控制
例4-4 输入一个字符,若为大写字母,则输出其对应 的小写字母;若为小写字母,则输出其对应的大写 字母;若为数字字符则输出其对应的数值,若为其 他字符则原样输出。
age is 17>> >> fprintf('age is %d\n',17); age is 17
第4章 MATLAB程序流程控制
例4-2 求一元二次方程ax2 +bx+c=0的根。 程序如下: a=input('a=?'); b=input('b=?'); c=input('c=?'); delta=b*b-4*a*c; x=[(-b+sqrt(delta))/(2*a),(-b-sqrt(delta))/(2*a)]; disp(['x1=',num2str(x(1)),',x2=',num2str(x(2))]);
M文件的扩展名为.mFra bibliotek第4章 MATLAB程序流程控制
1.建立新的M文件 为建立新的M文件,启动MATLAB编辑器有3种方法。 ① 在MATLAB主窗口选择“主页”选项卡,在“文件” 命令组中单击“新建脚本”命令按钮。 ② 在MATLAB命令行窗口输入命令: edit 文件名 启动MATLAB编辑器后,输入M文件的内容并存盘。 ③ 在命令历史窗口选中一些命令(按住Ctrl可同时选 择多条命令),然后从右键快捷菜单中选择“创建 脚本”命令,将会启动MATLAB编辑器,并在编辑 区中加入所选中的命令。

MatlabM文件详解

MatlabM文件详解
3
M文件调试
▪ M文件的调试
▪ 可以在文件编辑器中进行
▪ M语言的文件编辑器不仅仅是一个文件编辑器,还是
一个可视化的调试开发环境
▪ 可以在命令行中结合具体的命令进行
M文件调试
▪ 应用程序的错误
▪ 语法错误
▪ 包括词法或者文法的错误
▪ 运行时的错误
▪ 指程序运行过程中得到的结果不是用户需要的结果
▪ 程序的调试是在程序无法得到正确结果时进行程
MATLAB的工作模式
(1)指令驱动模式
▪ 即在MATLABM命令行窗口下用户输入单行指令时, MATLAB立即处理这条指令,并显示结果,这就 是MATLAB命令行方式。
▪ 缺点:命令行方式程序可读性差,而且不能存 储,当处理复杂问题和大量数据时很不方便。
(2)M文件模式
▪ 将MATLAB语句构成的程序存储成以m为扩展名的 文件,然后再执行该程序文件,这种工作模式 称为程序文件模式。
序修正的唯一手段 ▪ M文件是一种解释型语言,只有在运行过程中才能发现
应用程序的错误
M文件调试
▪ M语言文件编辑器提供Breakpoints菜单进行程序调试
M文件调试
▪ Breakpoints菜单中的命令用来设置各种断点,只有
设置了断点的应用程序才能进行调试 ▪ 提供的自动断点
▪ Stop if Error ▪ Stop if Warning ▪ Stop if NaN or Inf ▪ Stop if All Errors
程序执行的结果将显示于命令窗中
函数文件(相当于C语言的子函数)
▪ 函数文件供主程序文件调用,必须指定函数名和
输入输出参数,并由主程序文件中语句序列给出 一系列操作,从而生成所需数据

第4章 MATLAB编程基础

第4章 MATLAB编程基础

(3)使用C-MEX文件:在必须使用for或 while循环体时,为了提高执行效率,可以将 循环部分的代码转化为C-MEX文件。 (4)尽量使用函数文件:在MATLAB中,函 数文件的效率一般比脚本文件的效率要高, 这是由于函数文件有自己的工作空间,执行 一次后仅保存程序运行必需的变量,并将函 数编译成伪代码,下次调用时提高了效率。
例:根据用户要求找出数组x中的最大值、最 小值或所有元素的和。
t=[0:100];x=exp(-t).*sin(t); %给定数组x require=input('Type min,max,or sum.','s') %用户输入要求 require=lower(require); switch require case 'min' %分支判断通过比较字符串完 成 minimum=min(x) case 'max' maximum=max(x) case 'sum' total=sum(x) otherwise disp('You have not entered a proper requirement') end
例:利用for循环求1!+2!+3!+ +5!的值
sum=0; for i=1:5 pdr=1; for k=1:i pdr=pdr*k; end sum=sum+pdr; end
e x 1 x x 2 2 x3 6 例:找出近似级数 中误差大于1%之前的最大的x值(精确到小数点后两
垂直条形图 水平条形图
误差条形图 y轴对数刻度 坐标
commet stairs
rose compass

matlab中m文件的作用

matlab中m文件的作用

matlab中m文件的作用
在MATLAB中,M文件是一种文本文件,用于存储MATLAB程序代码。

M文件可以包含函数、脚本或其他MATLAB代码。

它们被用来定义函数、执行一系列的命令或者实现特定的算法。

M文件的作用非常广泛,下面我会从几个不同的角度来详细介绍。

首先,M文件可以用来定义函数。

在MATLAB中,函数是一段独立的代码,可以接受输入参数并返回输出结果。

M文件中定义的函数可以被其他M文件或者MATLAB命令调用,这样可以实现代码的复用和模块化。

通过定义函数,我们可以将复杂的计算或者算法封装起来,提高代码的可读性和可维护性。

其次,M文件可以用来编写脚本。

脚本是一系列按顺序执行的MATLAB命令的集合。

通过编写脚本,可以实现自动化的数据处理、图形绘制、模拟等功能。

脚本可以帮助用户简化重复性工作,提高工作效率。

此外,M文件还可以用来实现特定的算法或者数值计算。

MATLAB作为一种强大的数学计算软件,提供了丰富的数学函数和工具,用户可以通过编写M文件来实现各种复杂的数学计算和算法。

比如,求解方程、拟合曲线、求解微分方程等。

总的来说,M文件在MATLAB中具有非常重要的作用,它们是实现功能的基本单元,可以用来定义函数、编写脚本、实现算法等。

通过合理的使用M文件,可以充分发挥MATLAB的强大功能,实现各种复杂的数学计算和工程应用。

M文件PPT课件

M文件PPT课件
23
MATLAB
2. 选择结构(根据给定条件成立否,分别执行不同语
句,主要有if,switch,try)
(1) 条件分支语句——if语句
在MATLAB中,if语句有3种格式。
1) 单分支if语句:
if 条件
语句组
end
2)双分支if语句;(求分段函数多用)
if 条件
语句组1
else
语句组2
end
24
☺用matlab自带的编辑器来创建m文件。 (建 议使用)。
☺单击桌面图标 ,或选中{File:New: M-File} ,或在命令窗输入指令edit,都可以打开
7
空白的M文件编辑器;点击 ,打开已有的M文
MATLAB
(2) M文件的分类
M文件有两类:命令文件(脚本文件)和函数 文件。它们的扩展名均为.m。
30
MATLAB
(3)循环的嵌套
如果一个循环结构的循环体又包括 一个循环结构,就称为循环的嵌套,或 称为多重循环结构。exfor.m
31
MATLAB
(4)break语句和continue语句 ☺它们一般与if语句配合使用。 ☺break语句用于终止循环的执行。 当在循环体
第四章 MATLAB程序设计
4.1 M文件 4.2 程序控制结构 4.3 程序调试
2
MATLAB
本章重点
1.掌握M文件的特点及功能 2.编写M函数文件的基本方法及步骤 3.掌握常用的几种程序控制结构
3
MATLAB
4.1 M文件
☺MATLAB的工作模式 ☺M文件介绍 ☺M函数文件相关概念
4
MATLAB
1. MATLAB的工作模式
指令(命令)执行模式

第3章-MATLAB的程序设计基础

第3章-MATLAB的程序设计基础

100
30
3.5.2 条件转移构造
1.if – else - end 构造
if 体现式 1 语句体 1
elseif 体现式 2 语句体 2 ¦
else 语句体 n
end
31
当有多种条件时,若条件 式1为假,则再判断elseif旳 条件式2,假如全部条件式都 不满足,则执行else旳语句 体n,然后跳出if–else-end 构造;当条件式为真则执行 相应旳语句体,不然跳过该 语句体。
32
编制M函数文件,实现不等长多项式旳加法运算。
33
a [1 2 3 4 5 4 3 2 1 0]
34
35
36
37
2.switch - case构造
switch 体现式 case 值 1 语句体 1 case 值 2 语句体 2 ¦ otherwise 语句体 n
end
38
体现式旳值和哪种情况 (case)旳值相同,就执行 哪种情况中旳语句体,然后 跳出该分支构造;假如都不 同,则执行otherwise中旳 语句体。
(2)用程序文件来实现
x 1 1 x 1
x 1
47
2. 编制程序,判断输入数据旳奇偶性。
(1)只考虑输入数字旳情况
48
2. 编制程序,判断输入数据旳奇偶性。
(2)考虑输入是空格或直接按回车键旳情况
49
3. 编制程序,寻找输入数组中旳最大数。
50
4. 求任意度数旳三角函数值,并将正弦、余 弦、正切及余切同步按表格形式显示出来。
6
7
3.3 函数文件
函数文件:必须由其他M文件来调用。函数接 受输入旳参数,然后执行并输出成果。
函数文件必须以关键字“function”开 头 函数文件旳第一行为函数阐明语句,其格式为: function [输出变量列表] = 函数名(输入变量列表)

matlab 程序流程控制文件设计

matlab 程序流程控制文件设计

在MATLAB 中,可以使用以下几种程序流程控制文件来设计程序:1. 脚本文件(Script Files):- 脚本文件是一个以 .m 扩展名命名的文本文件,其中包含一系列MATLAB 命令和函数调用。

- 脚本文件按照从上到下的顺序执行,适用于简单程序或者需要按照特定顺序执行的操作。

- 示例:```matlab% 脚本文件示例x = 10;y = sqrt(x);disp(y);```2. 函数文件(Function Files):- 函数文件也是以 .m 扩展名命名的文本文件,其中定义了一个或多个MATLAB 函数。

- 函数文件可以接受输入参数,并返回计算结果,通常用于封装可重复使用的代码块。

- 示例:```matlab% 函数文件示例function y = mySquare(x)y = x^2;end```3. 控制流程语句(Control Flow Statements):- MATLAB 提供了一些控制流程语句,用于根据条件或循环来控制程序的执行流程。

- if-else 语句:根据条件选择执行不同的代码块。

- for 循环:按照指定的次数重复执行一段代码。

- while 循环:在满足条件的情况下重复执行一段代码。

- 示例:```matlab% 控制流程语句示例x = 5;if x > 0disp('x 是正数');elsedisp('x 是负数或零');endfor i = 1:5disp(i); endwhile x < 10x = x + 1;disp(x); end```。

实验五-MATLAB的程序设计

实验五-MATLAB的程序设计

实验五MATLAB的程序设计一、实验目的1.熟悉MATLAB 的编程环境;2.熟悉和掌握脚本文件和函数文件建立与使用方法;3.掌握MATLAB程序设计的流程控制语句;4.掌握函数调用和参数传递;5.熟悉MATLAB 程序调试方法。

二、实验仪器1.计算机2.MATLAB 软件环境三、实验指导1. M 文本文件介绍一个M 文件通常包含五个部分,函数定义语句、H1 帮助行、帮助文本、函数体或者脚本文件语句和注释语句。

一个完整的M 文件的结构为:function f = fact(n) 函数定义语句% Compute a factorial value. H1 行% FACT(N) returns the factorial of N, 帮助文本% usually denoted by N!% Put simply, FACT(N) is PROD(1:N). 注释语句f = prod(1:n); 函数体函数定义语句只在函数文件中存在,定义函数名称、输入输出参数的数量和顺序。

函数定义语句的格式为:function y = fact(x)2. 函数流程控制顺序结构顺序结构是最简单的程序结构,系统在编译程序时,按照程序的物理位置顺序执行。

这种程序容易编制,但是结构单一,能够实现的功能有限。

判断语句(if…else…end)if…endif…else…endif…elseif…else…end1)if…end此时的程序结构如下:if 表达式执行代码块end这是最简单的判断语句,只有一个判断语句,其中的表达式为逻辑表达式,当表达式为真时,执行相应的语句,否则,直接跳到下一段语句。

2)if…else…end当程序有两个选择时,可以选择if…else…end 结构,此时程序结构为:if 表达式执行代码块1else执行代码块2end当判断表达式为真时,执行代码块1,否则执行代码块2。

3)if…elseif…else…end上面的两种形式中,分别包含一个选择和两个选择,当判断包含多个选择时,可以采用elseif 语句,结构为:if 表达式1执行代码块1elseif 表达式2执行代码块2elseif ..................else执行代码块end其中可以包含任意多个elseif 语句。

Matlab应用 上机实验3

Matlab应用 上机实验3

实验3 M 文件和程序的流程控制语句实验目的:1、 理解脚本M 文件和函数M 文件的区别。

2、 掌握脚本M 文件和函数M 文件的创建和运行。

3、 掌握流程控制语句的使用。

4、程序的调试。

实验内容:1、 编写一个函数文件fun.m ,用于求∑==101n n n a,然后在命令文件中给定a 的值,调用函数fun 。

2、 编写一个函数文件,求小于任意自然数n 的斐波那契数列各项。

Fibnacci 数列定义如下:⎪⎩⎪⎨⎧>+===--2,121121n f f fn f f n n3、 编写一个函数M 文件([y1,y2]=fun(x1,x2)),使之可以处理1个或两个输入参数,一个或两个输出参数,满足如下条件:当只有一个输入参数x1时:如果只有一个输出参数y1,则y1=x1; 如果有两个输出参数y1,y2,则y1=y2=x1/2; 当有两个输入参数x1,x2时:如果只有一个输出参数y1,则y1=x1+x2; 如果有两个输出参数y1,y2,则y1=y2=(x1+x2)/2; 4、(个人所得税纳税问题)根据中华人民共和国个人所得税法规定,公民的工资、薪金所得应该依法缴纳个人所得税。

个人所得税计算公式为:在每个人的月收入中超过1600元以上的部分应该纳税,这部分收入称为应纳税所得额。

应纳税所得额实行分段累积税率,按如下税率表计算1) y 和x 的函数关系,并编写函数M 文件实现此函数。

2) 调用函数,求月收入为6850和12300的应纳税额。

5、编matlab M文件实现下述猜数游戏(选做,有加分)首先由计算机产生[1,100]之间的随机整数,然后由用户猜测所产生的随机数。

根据用户猜测的情况给出不同提示,如猜测的数大于产生的数,则显示“High”,小于则显示“Low”,等于则显示“You won”,同时退出游戏。

用户最多可以猜7次。

matlab程序流程控制总结

matlab程序流程控制总结

matlab程序流程控制总结下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!1. 顺序结构按照代码的书写顺序依次执行语句。

是最简单的程序流程控制结构。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4.1.2 条件控制语句if,switch
1. if 条件式1 语句段1 elseif 条件式2 语句段2 ... else 语句段n+1 end
当有多个条件时,条件 式1为假再判断elseif的 条件式2,如果所有的条 件式都不满足,则执行 else的语句段n+1,当条 件式为真则执行相应的语 句段; If…else…end结构 也可以是没有elseif和 else的简单结构。
4.1.4 其他流程控制指令(续)
error/lasterr 显示出错信息/显示最新出错原因,终止程序运行 warning/lastwarn 显示警告/显示MATLAB自动给出的最新警告,程序继续运行 %exm R=input('What is your name:','s') %以字符串形式赋给R S=input('How old are you?') %键入数值 pause(3) %暂停3秒 pause %等待用户按任意键 error('You can''t join the army') %显示出错信息 errordlg,warndlg %给出出错、警告对话框
4.1.4 其他流程控制指令(续)
5. input指令 input指令用来提示用户应该从键盘输入数值、字符 串和表达式,并接受该输入。 a=input(‘input a number:’) %输入数值给a b=input('input a number:','s') %输入字符串给b
6. return指令 return指令是终止当前命令的执行,并且立即返回 到上一级调用函数或等待键盘输入命令,可以用来提 前结束程序的运行。
举例:
条件控制语句if举例
cost=10;number=12; if number>8 sums=number*0.95*cost; end,sums
演示
4.1.2 条件控制语句if,switch
2. switch 开关表达式 case 表达式1 语句段1 case表达式2 语句段2 ... otherwise 语句段n end
try 语句段1 catch 语句段2 end
首先试探性地执行语句段 1,如果在此段语句执行 过程中出现错误,则将错 误信息赋给保留的 lasterr变量,并放弃这 段语句,转而执行语句段 2中的语句,当执行语句 段2又出现错误,则终止 该结构。
举例:
try…catch…end结构进行矩阵相乘运算
小结:
1)case后面的表达式可以是元胞数组,只 要开关表达式的值与元胞数组中任一个 元素值相等,就执行其后的语句段。 2)switch指令判断开关表达式的值符合哪 一个case,并执行相应的语句段,执行 完毕,自动跳出switch结构,不需要 break指令。
4.1.3 try... catch... end结构
(1) 将开关表达式依次与case后面的 表达式进行比较,如果表达式1不满足, 则与下一个表达式2比较,如果都不满 足则执行otherwise后面的语句段n; 一旦开关表达式与某个表达式相等, 则执行其后面的语句段。 (2) 开关表达式只能是标量或字 符串。 (3) case后面的表达式可以是标 量、字符串或元胞数组,如果是元胞 数组则将开关表达式与元胞数组的所 有元素进行比较,只要某个元素与开 关表达式相等,就执行其后的语句段。
n=4; a=magic(n); %生成4阶魔方矩阵a m=3; b=eye(3); %生成3阶单位矩阵b
演示
4.1.3 try... catch... end结构
小结: 试探出矩阵的大小不匹配时,矩阵无法相 乘,则再执行case后面的语句段,将a的子 矩阵取出与b矩阵相乘。可以通过这种结构 灵活的实现矩阵的乘法运算。
举例:
例4.2 条件控制语句用于学生的成绩管理
%exm04_02.m clear; %划分区域:满分(100),优秀(90-99),良 好 %(80-89),及格(60-79),不及格(<60) for i = 1:10 a{i} = 89+i; b{i} = 79+i;
演示
例4.2 条件控制语句用于学生的成绩管理
循环控制语句for x=array 循环体
4.1 MATLAB控制流函数(续)
4.1.1 循环控制语句while while 表达式 循环体 end
只要表达式为逻辑真,就执行循环体;一旦 表达式为假,就结束循环。表达式可以是向量 也可以是矩阵,如果表达式为矩阵则当所有的 元素都为真才执行循环体,如果表达式为nan, MATLAB认为是假,不执行循环体。
例4.1 循环控制语句
%a中每一个数字等于所在行列数之和 for i = 1:10 for j = 1:10 a(i,j) = i+j; end end a
演示
例4.1 循环控制语句(续)
注意: end必须和for, while成对出现,不可 省略。特别是出现循环嵌套时,一定要注 意for/while和end的配对问题。
4.1.4 其他流程控制指令
1. break指令 break指令可以使包含break的最内层的for 或while语句强制终止,立即跳出该结构,执 行end后面的命令,break命令一般和If结构结 合使用。 2. continue指令 continue指令用于结束本次for或while循环, 只结束本次循环而继续进行下次循环。
4.1.4 其他流程控制指令(续)
3. pause指令 pause指令用来使程序运行暂停,等待用户 按任意键继续 。 pause(n)指令用于使程序暂停n秒后再继续 执行。 4. keyboard指令 keyboard指令将“控制权”交给键盘,等待 键盘命令,仅当用户输入return指令后,“控 制权”才交回程序。
变量的检测传递和限权使用函数 输入输出变脸检测函数 子函数和私用函数 串演算函数 函数句柄 调试和剖析
4.1 MATLAB控制流函数
4.1.1 for end
循环体被循环执行,执行的次数就是array的 列数,array可以是向量也可以是矩阵,循环变 量x依次取array的流程控制
M文件和流程控制
MATLAB控制流函数 循环控制语句 条件控制语句if,switch try…catch…end结构 其它流程控制指令
M文件和流程控制(续)
M脚本文件和函数文件 M脚本文件和函数文件的比较 局部变量和全局变量 M文件的一般结构
M文件和流程控制(续)
相关文档
最新文档