有两个附加语句可以控制while 和for 循环:break 和continue 语句。
break 语句可以中止循环的执行和跳到end 后面的第一句执行,而continue 只中止本次循环,然后返回循环的顶部。如果break 语句在循环体中执行,那么体的执行中止,然后执行循环后的第一个可执行性语句。
用在for 循环中的break 语句的例子如下:
%test_break.m for ii = 1:5; if ii == 3; break; end fprintf('ii = %d ', ii); end disp('End of loop!');
执行的结果为:
>> test_break
ii = 1
ii = 2
End of loop!
注意break 语句在ii 为3 时执行,然后执行disp('End of loop!');语句而不执行fprintf('ii =%d ', ii);语句。
continue 语句只中止本次循环,然后返回循环的顶部。在for 循环中的控制变量将会更新到下一个值,循环将会继续进行。
下面是一个在for 循环中的continue 的例子:
%test_continue.m for ii = 1:5; if ii == 3; continue; end fprintf('ii = %d ', ii); end disp('End of loop!');
程序运行的结果为;
>> test_continue
ii = 1
ii = 2
ii = 4
ii = 5
End of loop!
注意continue 语句在ii 为3 时执行,然后程序返回循环的顶部而不执行fprintf 语句。break和continue 语句可用在while 循环和for 循环中。