MATLAB if语句的用法(新手必看)
if-else-end 指令为 MATLAB 程序流提供了一种分支结构,该结构的形式根据实际情况的不同而不同,主要有以下几种。
1) 若判决条件 expression 为真,则执行命令组,否则跳过该命令组,调用格式如下:
2) 若可供选择的执行命令组有两组,则采用如下结构:
3) 若可供选择的执行命令组有 n(n>2)组,则采用如下结构:
【实例 1】if-else-end 分支结构的简单运用示例。在编辑器窗口中编写 M 文件并命名为 ex.m。
【实例 2】已知符号函数如下,请使用 if 语句判断当给定变量 x 的值时,相应的函数值 y。
在编辑器窗口中编写 M 文件并命名为 ex.m。
1) 若判决条件 expression 为真,则执行命令组,否则跳过该命令组,调用格式如下:
if expression commands end
2) 若可供选择的执行命令组有两组,则采用如下结构:
if expression %判决条件 commands1 %判决条件为真,执行命令组1,并结束此结构 else commands2 %判决条件为假,执行命令组2,并结束此结构 end
3) 若可供选择的执行命令组有 n(n>2)组,则采用如下结构:
if expression1 % 判决条件 commands1 % 判决条件 expression1 为真,执行 commands1,并结束此结构 elseif expression2 commands2 % 判决条件 expression1 为假,expression2 为真,执行 commands2,并结束此结构 % else commandsn % 前面所有的判决条件均为假,执行 commandsn,并结束此结构 end
【实例 1】if-else-end 分支结构的简单运用示例。在编辑器窗口中编写 M 文件并命名为 ex.m。
Rand_a = rand(1) % 创建一个随机数 Rand_a if Rand_a > 0.5 Rand_b = Rand_a % 如果 Rand_a 大于 0.5,那么创建变量 Rand_b 并等于 Rand_a else Rand_b = 1 - Rand_a % 如果 Rand_a 不大于 0.5,那么创建变量 Rand_b 并等于 1-Rand_a end运行 M 文件,输出结果如下:
Rand_a =
0.3678
Rand_b =
0.6322 % 由于产生的随机数 Rand_a 小于 0.5,因此 Rand_b 等于 1-Rand_a
【实例 2】已知符号函数如下,请使用 if 语句判断当给定变量 x 的值时,相应的函数值 y。

在编辑器窗口中编写 M 文件并命名为 ex.m。
x = input('enter x:'); if (x > 0) y = 1; elseif (x == 0) y = 0; else y = -1; end disp(y)调用该文件,分别输入不同的 x 值(此处输入 10),运行程序,输出结果如下:
>> ex
enter'x':10
1