头痛!!!在图书馆改了一个小时的bug,明明两份代码几乎一样,效果相差巨大,最后竟发现败在了continue语句上,留下了不学无术的眼泪!在此记录一下学习不扎实的痛苦。
a = 9;
while a < 20
a = a + 1;
if a == 15
% skip the iteration
continue; % 直接跳入下个循环
end
fprintf('value of a: %d\n', a);
end
print:
value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 16
value of a: 17
value of a: 18
value of a: 19
value of a: 20
在此处a=15,fprintf语句不执行。
接下来,我们看看break语句的效果。
a = 9;
while a < 20
a = a + 1;
if a == 15
% skip the iteration
break;
end
fprintf('value of a: %d\n', a);
end
value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
break语句直接跳出了循环!