MATLAB学习笔记—分支结构
2015-11-07 本文已影响281人
mtobeiyf
if语句
function guess_my_number(x)
if x == 2
fprintf('Congrats! You guessed my number!\n');
end
注意每个if语句都要以end结尾
if-else语句
function guess_my_number(x)
if x == 2
fprintf('Congrats! You guessed my number!\n');
else
fprintf('Not right, but a good guess.\n');
end
if-elseif-else语句
function guess_my_number(x)
if x == 2
fprintf('Congrats! You guessed my number!\n');
elseif x < 42
fprintf('Too small. Try again\n');
else
fprintf('Not right, but a good guess.\n');
end
最后一个else可以不要,就是一个if-elseif结构。
关系运算符(Relational operators)
| 运算符 | 含义 |
|---|---|
| == | 判断是否等于 |
| ~= | 是否不等于 |
| > | 是否大于 |
| < | 是否小于 |
| >= | 是否大于等于 |
| <= | 是否小于等于 |
进行判断后返回值为1(真)或0(假)
可以进行一组数的比较
[4 -1 7 5 3] > [5 -9 6 5 -3]
ans =
0 1 1 0 1
当然也可以这样,逐个与4进行比较:
[4 -1 7 5 3] <= 4
还有很多玩法
sum([14 9 3 14 8 3] == 14)
逻辑运算符(Logical operators)
| 运算符 | 含义 | ||
|---|---|---|---|
| && | 逻辑与 | ||
| 逻辑或 | |||
| ~ | 逻辑非 |
| 输入 || && | || |
| :------: | :------: | :------: | :------: |
| false | false | 0 | 0 |
| false | true | 0 | 1 |
| true | false | 0 | 1 |
| true | true | 1 | 1 |
非零为真,零为假
~[1 pi 0 -2]
ans =
0 0 1 0
但对两个矩阵使用&&和||,应变为&和|
[1 -3 0 9 0] & [pi 0 0 2 3]
ans =
1 1 0 1 1
help precedence 获取关于运算符优先级的帮助
循环嵌套(Nested if-statements)
if arg_1
if arg_2
statement_1;
else
statement_2;
end
else
statement_3;
end
©Fing