% 目标:
% 判定成绩等级
%定义变量
% 输入:分数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嵌套的情况

matlab中使用elseif和if嵌套的对比的更多相关文章

  1. Matlab中函数定义方法

    Matlab自定义函数的六种方法 n1.函数文件+调用函数(命令)文件:需单独定义一个自定义函数的M文件: n2.函数文件+子函数:定义一个具有多个自定义函数的M文件: n3.Inline:无需M文件 ...

  2. matlab中同一文件定义子函数的方法

    在matlab中一个.m文件中可以有多个的子函数,但仅能有一个主函数,并且M文件名必须和主函数相同在一个m文件中通常有两种定义子函数的方法: 1.嵌套定义 myfunc1会和主函数共享变量名.这种情况 ...

  3. matlab中disp函数的使用

    disp函数直接将内容输出在Matlab命令窗口中, 关键是看disp函数怎么把字符和数字在一起进行显示. matlab中disp()就是屏幕输出函数,类似于c语言中的printf()函数 %%以下是 ...

  4. MATLAB中的结构数组

    MATLAB中的结构数组 结构数组: 结构是包含一组记录的数据类型,而记录则是存储在相应的字段中.结构的字段可以是任意一种MATLAB数据类型的变量或者对象.结构类型的变量也可以是一维的.二维的或多维 ...

  5. MATLAB中的FOR循环问题

    做量化操作的时候经常需要使用到matlab编写策略或者计算多因子,for循环非常慢,自己找了一些matlab中for循环的优化方法,for的部分每处理一个大矩阵都要花费大量的时间,这是不可避免需要遇到 ...

  6. matlab中help所有函数功能的英文翻译

    doc funname 在帮助浏览器中打开帮助文档 help funname 在命令窗口打开帮助文档 helpbrowser 直接打开帮助浏览器 lookfor funname 搜索某个关键字相关函数 ...

  7. $ 一步一步学Matlab(3)——Matlab中的数据类型

    小学时候我们就知道,数学中有自然数.整数.分数.小数等等很多种类型的数.到了中学,我们又发现了其实还有无理数.复数这些有些特殊的数.到了大学学了高等数学之后,我们又知道了其实还存在着无穷大.无穷小这样 ...

  8. Matlab 中实用数据结构之 containers.Map

    概要   熟悉 Python 的都知道字典 Dict 类型数据结构功能的强大,Matlab 中虽然有表结构,但是其列名必须是亦变量名类型的字符串,如果我想用数字开头的字符串作键值,其表结构就无能为力了 ...

  9. Matlab 中 Data-driven 风格的 API 设计

    设计 所谓 data-driven API,指的是用户可以把"操作"作为参数,传入函数,像下面这种: stream = dataStream('load', 'example.cs ...

随机推荐

  1. WeakHashMap和Java引用类型详细解析

    WeakHashMap是种弱引用的HashMap,这是说,WeakHashMap里的key值如果没有外部强引用,在垃圾回收之后,WeakHashMap的对应内容也会被移除掉. 1.1 Java的引用类 ...

  2. js执行js字符串函数的方法

    <script> var jsText = 'return function(){alert(1+1)}' var jscode = new Function(jsText)(); jsc ...

  3. C语言-结构体

    C语言中数组是把相同类型的数据类型的变量集中在一起了,而结构体则是把不同类型的变量聚集在一起. 结构体也是一种数据类型,但是它是一种自定义的数据类型,也就是说和使用其他数据类型不一样,我们得先定义这种 ...

  4. VirtualBox 安装增强工具

    菜单的: Device>insert  guest addtion. 定位: cd /media/cdrom 安装: sudo sh ./VBoxLinuxAdditions-x86.run 然 ...

  5. Git和Github的配合使用

    Git教程 http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 Git 本地仓库详解  ...

  6. n皇后问题 [随机化算法,拉斯维加斯算法]

    问题: 如何能够在 n×n 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行.纵行或斜线上. 分析: 这题常规的解法应该是回溯法, ...

  7. Swift 添加到TableView实现动画效果

    let indexPath = NSIndexPath(forRow:0 ,inSection:0) self.tableView.insertRowsAtIndexPaths([indexPath] ...

  8. DEV组件LookupEdit,ComboBoxEdit绑定数据源

    LookupEdit可以绑定数据表(DataTable)或对象数据组(Object List)作为数据源,下拉窗体可自定显示栏位. 绑定数据源需要设置三个参数:DisplayMember ,Value ...

  9. Android组件生命周期(三)

    Android系统试图尽可能长地保持一个应用程序进程,但是当内存低时它最终还是需要移除旧的进程.为了决定保持哪个进程及杀死哪个进程,Android将每个进程放入一个基于运行于其中的组件的重要性等级和这 ...

  10. Java-io流入门到精通详细总结

    IO流:★★★★★,用于处理设备上数据. 流:可以理解数据的流动,就是一个数据流.IO流最终要以对象来体现,对象都存在IO包中. 流也进行分类: 1:输入流(读)和输出流(写). 2:因为处理的数据不 ...