这个画流程图最清楚了。我就用文字描述吧:
代码一:
先判断IF1的条件,符合的话执行IF1的代码,然后到IF2;不符合的话直接跳到IF2
然后判断IF2的条件,符合的话执行IF2的代码,然后到IF3;不符合的话直接跳到IF3
最后判断IF3的条件,符合的话执行IF3的代码,不符合的话执行else的代码;然后代码执行结束
代码二:
先判断IF的条件,符合的话执行IF的代码,然后结束;
不符合的话,判断else IF1的条件,符合的话执行else IF1的代码,然后结束;
不符合的话,判断else IF2的条件,符合的话执行else IF2的代码,不符合的话执行else的代码,然后结束
由此可见,代码一的效率要低一些,三个IF都会被判断,三个IF里的代码都有可能被执行;代码二的四个代码区(IF,else IF, else IF, else)只有一个会被执行,而且如果前面的判断为真的话,执行完代码就直接结束了,不会再判断后面的条件。
代码一的else语句只和最后一个IF语句有关,就是说只有当最后一个IF语句判断为假时,才执行else{...;}内的语句;
代码二的else语句分别和它前面的IF语句有关,就是说任何一个IF语句判断为假时,都会执行紧跟在它后面的else{...;}内的语句。
就是这样啦,希望提问者采纳答案 o(∩_∩)o
代码一是三个IF只要有一个不满足就会执行else,就一结果。代码二是三个结果,大部分都用二
没太大区别吧。代码二预算效率要低点
up