- 顺序结构
- if语句
- switch语句
- 循环结构
- for语句
- while语句
- 其它语句
- break
- continue
- return
- try…catch…
MATLAB的if语句与C语言的类似,区别在于:
- else和if之间没有空格
- 表达式不需要中括号"(“和”)"括起来
- 结尾需要用关键字end表示
- 语句组不需要大括号"{"和“}”括起来(因为会有end以及else等关键字进行区分)
示例如下
if 表达式 语句组 elseif 表达式2 语句组2 else 语句组3 end
switch语句结构流程控制语句在m文件和命令行窗口都可以进行编写,在命令行窗口编写时,左下角会出现“继续输入语句”的字样,直到输入end并按下回车,才会开始执行。
MATLAB的switch语句与C语言的类似,区别在于:
- 最后的默认选项是otherwise而不是default
- case语句后不需要冒号":"
- case语句中的常量表达式可以为数组(用数组名、{}括起的元素都行)
- 结尾需要用关键字end表示
- case语句组不需要大括号"{"和“}”括起来
示例如下
switch 表达式
case 常量表达式1
语句组1
case 常量表达式2
语句组2
default
语句组3
end
循环结构 for语句MATLAB的switch不需要break,而是执行任意语句组后退出。
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…的使用可以提高程序的容错能力以及程序设计的灵活性,而不至于但碰见错误时跳到死循环或停止运行。



