开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第10天,点击查看活动详情
MATLAB 条件语句
决策结构要求程序员应指定一个或多个要由程序评估或测试的条件,如果确定条件为真,则应指定要执行的一个或多个语句,如果条件为真,则可以选择要执行的其他语句。条件确定为假。
以下是大多数编程语言中常见的典型决策结构的一般形式
MATLAB-if ... end语句
if ... end语句包含一条if语句和一个布尔表达式,后跟一个或多个语句。它由end语句定界。
语法
MATLAB中if语句的语法是-
if <expression>
%如果布尔表达式为真,则执行语句
<statements>
end
如果表达式的计算结果为true,则将执行if语句中的代码块。如果表达式的计算结果为false,则将执行end语句之后的第一组代码。
创建一个脚本文件并输入以下代码-
示例
a = 10;
%使用if语句检查条件
if a < 20
%如果condition为真,则打印以下内容
fprintf('a is less than 20\n' );
end
fprintf('value of a is : %d\n', a);
运行文件时,它显示以下结果-
a is less than 20
value of a is : 10
MATLAB-if ... else ... end语句
if语句后可以跟可选的else语句,该语句在表达式为false时执行。
语法
MATLAB中if ... else语句的语法是-
if <expression>
%如果布尔表达式为真,则将执行语句
<statement(s)>
else
<statement(s)>
%如果布尔表达式为false,则将执行语句
end
如果布尔表达式的计算结果为true,则将执行if代码块,否则将执行else代码块。
创建一个脚本文件并输入以下代码-
示例
a = 100;
%检查布尔条件
if a < 20
%如果condition为真,则打印以下内容
fprintf('a is less than 20\n' );
else
%如果condition为false,则打印以下内容
fprintf('a is not less than 20\n' );
end
fprintf('value of a is : %d\n', a);
编译并执行上述代码后,将产生以下结果-
a is not less than 20
value of a is : 100
MATLAB-if ... elseif ... elseif ... else ... end语句
一条if语句后可以跟一个(或多个)可选elseif... 和一条else语句,这对于测试各种条件非常有用。
当使用if ... elseif ... else语句时,要牢记以下几点:
- 一个if可以有零个或另一个,并且必须在其他elseif之后。
- 一个if可以具有零个或多个elseif,并且它们必须位于else之前。
- 如果else if成功,则不会测试其余的elseif。
语法
if <expression 1>
%当表达式1为true时执行
<statement(s)>
elseif <expression 2>
%当布尔表达式2为true时执行
<statement(s)>
Elseif <expression 3>
%当布尔表达式3为true时执行
<statement(s)>
else
%当上述条件都不为true时执行
<statement(s)>
end
创建一个脚本文件并在其中键入以下代码-
示例
a = 100;
%检查布尔条件
if a == 10
%如果condition为真,则打印以下内容
fprintf('Value of a is 10\n' );
elseif( a == 20 )
% 如果条件成立的话
fprintf('Value of a is 20\n' );
elseif a == 30
% 如果条件成立的话
fprintf('Value of a is 30\n' );
else
%如果没有一个条件是真的
fprintf('None of the values are matching\n');
fprintf('Exact value of a is: %d\n', a );
end
编译并执行上述代码后,将产生以下结果-
None of the values are matching
Exact value of a is: 100