MATLAB学习笔记—分支结构

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

    原文作者:mtobeiyf
    原文地址: https://www.jianshu.com/p/fbf2851d5df8
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞