matlab中使用elseif和if嵌套的对比
% 目标: % 判定成绩等级 %定义变量 % 输入:分数grade %清除变量或指令 clc; % 允许用户输入参数 disp (\'该功能练习if语句\'); disp (\'输入你的成绩,系统将判定等级. \'); grade = input (\'输入分数: \'); %根据分数情况讨论 if grade > 95.0 %等级A disp(\'你的成绩是A等! \'); elseif grade > 86.0 %等级B disp(\'你的成绩是B等! \'); elseif grade > 76.0 %等级C disp(\'你的成绩是C等! \'); elseif grade > 66.0 %等级D disp(\'你的成绩是D等! \'); else %等级E disp(\'你的成绩是E等! \'); end
方法二:使用if 嵌套同样达到成绩判定功能:
% 判定成绩等级 %定义变量 % 输入:分数grade %清除变量或指令 clc; % 允许用户输入参数 disp (\'该功能练习if语句\'); disp (\'输入你的成绩,系统将判定等级. \'); grade = input (\'输入分数: \'); %根据分数情况讨论 if grade > 95.0 %等级A disp(\'你的成绩是A等! \'); else if grade > 86.0 %等级B disp(\'你的成绩是B等! \'); else if grade > 76.0 %等级C disp(\'你的成绩是C等! \'); else if grade > 66.0 %等级D disp(\'你的成绩是D等! \'); else %等级E disp(\'你的成绩是E等! \'); end end end end
因此,我们可以很显然的看到使用elseif比使用if嵌套更简洁明了,程序可读性更好,也利于调试,所以倾向用elseif
end总是和上一个最近的if匹配,所以,如果在第二种方法中意外丢失一个end时,编译器自己也不容易定位到错误位置,开发人员不得不自己重新排查
因此,推荐多个elseif的从句 ,而少用多个if嵌套的情况
版权声明:本文为shuqingstudy原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。