MATLAB(3)MATLAB程序流程控制语句

目录

  • 顺序结构
    • if语句
    • switch语句
  • 循环结构
    • for语句
    • while语句
  • 其它语句
    • break
    • continue
    • return
    • try…catch…

顺序结构

if语句

MATLAB的if语句与C语言的类似,区别在于:

  1. else和if之间没有空格
  2. 表达式不需要中括号"(“和”)"括起来
  3. 结尾需要用关键字end表示
  4. 语句组不需要大括号"{"和“}”括起来(因为会有end以及else等关键字进行区分)

示例如下

if 表达式
  语句组
elseif 表达式2
  语句组2
else
  语句组3
end

结构流程控制语句在m文件和命令行窗口都可以进行编写,在命令行窗口编写时,左下角会出现“继续输入语句”的字样,直到输入end并按下回车,才会开始执行。

switch语句

MATLAB的switch语句与C语言的类似,区别在于:

  1. 最后的默认选项是otherwise而不是default
  2. case语句后不需要冒号":"
  3. case语句中的常量表达式可以为数组(用数组名、{}括起的元素都行)
  4. 结尾需要用关键字end表示
  5. case语句组不需要大括号"{"和“}”括起来

示例如下

switch 表达式
  case 常量表达式1
       语句组1
  case 常量表达式2
       语句组2
  default
       语句组3
end

MATLAB的switch不需要break,而是执行任意语句组后退出。

循环结构

for语句

       MATLAB的for语句示例如下

for 循环变量=数组表达式
  循环体
end

       其中,数组表达式可以用数组名,此时每次循环中,循环变量等于对应下标的元素。当然,一般也可以用冒号表达式作为数组表达式使用,C语言的for(num=0;num<10;num++)与MATLAB的for num=0:1:9等效,当然,个人感觉C语言的for语句更灵活,(毕竟条件更容易写入,而对应下标的元素完全可以在循环体里面用数组),当然,MATLAB的for语句也可以实现C语言中的功能。(最多加个判断然后break)

while语句

       MATLAB的while语句示例如下,与C语言几乎一模一样。(但表达式不需要加括号)

while 表达式
  循环体
end

其它语句

break

       一般在循环语句中使用,用于终止最内层循环。

continue

       一般在循环语句中使用,用于跳过本次循环。

return

       使正在执行的函数正常退出

try…catch…

格式:

try
  语句组1
catch
  语句组2
end

       try…catch…语句实际上和下面的if结构类似,即执行语句组1,若出错则执行语句组2。(若正常就不执行语句组2,而是跳过咯)

if !语句组1
  语句组2
end

       try…catch…的使用可以提高程序的容错能力以及程序设计的灵活性,而不至于但碰见错误时跳到死循环或停止运行。

你可能感兴趣的:(matlab,开发语言)