主要内容

如果,elseif,其他的

如果条件为真执行语句

语法

如果表达式语句elseif表达式语句其他的语句结束

描述

例子

如果表达式,语句,最后评估一个表达式时,执行一组语句表达式是正确的。一个表达式是正确的时,其结果是非空的,只包含非零元素(逻辑或真正的数字)。否则,表达式是错误的。

elseif其他的块是可选的。语句执行只有之前的表达式如果……块都是虚假的。一个如果块可以包括多个elseif块。

例子

全部折叠

创建一个矩阵的年代。

nrows = 4;ncols = 6;A = 1 (nrows, ncols);

循环矩阵,每个元素分配一个新值。分配2在主对角线上,1在相邻的对角线,0其他地方。

c = 1: ncolsr = 1: nrows如果r = = c (r、c) = 2;elseifabs(电阻-电容)= = 1 (r、c) = 1;其他的(r、c) = 0;结束结束结束一个
一个=4×62 1 0 0 0 0 1 2 1 0 0 0 0 1 2 1 0 0 0 0 1 2 1 0

表达式,包括关系运算符数组,如> 0,是真的只有当每一个元素的结果是零。

测试是否有结果真正的使用任何函数。

限制= 0.75;1 =兰德(10日)
一个=10×10.8147 0.9058 0.1270 0.9134 0.6324 0.0975 0.2785 0.5469 0.9575 0.9649
如果任何(>限制)disp (“至少有一个价值高于上限”。)其他的disp (“所有值低于极限。”)结束
至少有一个价值高于极限。

比较数组的使用isequal而不是= =运营商测试平等,因为= =导致一个错误,当数组是不同的大小。

创建两个数组。

A = 1 (2、3);B =兰德(3、4、5);

如果大小(一个)大小(B)是相同的,连接数组;否则,显示一个警告,返回一个空数组。

如果isequal(大小大小(A)、(B)) C =[一个;B];其他的disp (A和B是不相同的大小。)C = [];结束
A和B的大小都是不一样的。

使用比较字符串对特征向量进行比较。使用= =测试结果平等错误当向量是不同大小的字符。

回复=输入(“你想看到一个回声?(y / n):“,“年代”);如果比较字符串(回答,“y”)disp(回复)结束

确定一个值是零。使用~ =运营商测试不平等。

x = 10;如果x ~ = 0 disp (“零值”)结束
非零值

确定一个值落在指定的范围内。

x = 10;minVal = 2;maxVal = 6;如果(x > = minVal) & & (x < = maxVal) disp (值在指定范围内。)elseif(x > maxVal) disp (价值超过最大值。)其他的disp (“价值低于最小值。)结束
价值超过最大值。

更多关于

全部折叠

表达式

一个表达式可以包含关系运算符(如<= =)和逻辑运算符(如& &,| |,或~)。使用逻辑运算符创建复合表达式。MATLAB®评估复合表达式从左到右,坚持运算符优先级规则。

在一个条件表达式如果……块,逻辑运算符&|像短路运算符。这种行为是一样的& &| |,分别。自& &| |持续短路条件表达式和语句,是一种很好的做法& &| |而不是&|在表达式。例如,

x = 42;如果存在(“myfunction.m”,“文件”)& & (myfunction (x) > =π)disp (的表达式是正确的)结束

的第一部分表达式的求值结果为false。因此,MATLAB不需要评估的第二部分表达式,这将导致一个未定义的函数的错误。

提示

  • 你可以任意数量的筑巢如果语句。每一个如果需要一个声明结束关键字。

  • 避免增加空间其他的elseif关键字(其他的如果)。创建一个嵌套的空间如果声明,要求自己的结束关键字。

扩展功能

C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。

版本历史

之前介绍过的R2006a