matlab和C语言的break及continue测试

 break和continue语句

有两个附加语句可以控制whilefor循环:breakcontinue语句。break语句可以中止循环的执行和跳到end后面的第一句执行,而continue只中止本次循环,然后返回循环的顶部。如果break语句在循环体中执行,那么循环体的执行中止,然后执行循环后的第一个可执行性语句。用在for循环中的break语句的例子如下:

程序执行的结果为:

% 功能:
% 测试break,当ii=3时,break执行
% 更为重要的是:
% break后,程序不仅仅调到第一个end后,而是跳出了循环体(for/while)
% 这也就解释了,在C语言中,break也是使循环体停止,而不仅仅是跳出循环体中一个if{},继续
% 执行循环体
for ii =1:5;
    if ii ==3
        break;
    end
    fprintf('ii = %d 
',ii);
end
disp('跳出循环');

>> test_break

>>ii = 1
>>ii = 2
>>跳出循环

注意break语句在ii为3时执行,然后执行disp('End of loop!');语句而不执行fprintf('ii = %d  ', ii);语句。

 建一个C工程来验证:

#include <stdio.h>
void main()
{
    printf("建一个C工程来测试break是否跳出循环体
");
    int i=0;
    for(i=1;i<5;i++)
    {
        if (i==3)
        {
            break;
        }
        printf("i == %d
",i);
    }
    printf("跳出循环体
");
}

j结果:

continue语句只中止本次循环,然后返回循环的顶部。在for循环中的控制变量将会更新到下一个值,循环将会继续进行。下面是一个在for循环中的continue的例子。

%test_continue.m

% 执行循环体
for ii =1:5;
    if ii ==3
        continue;
    end
    fprintf('ii = %d 
',ii);
end
disp('跳出循环');

程序运行的结果为;

ii = 1
ii = 2
ii = 4
ii = 5
跳出循环

注意continue语句在ii3时执行,然后程序返回循环的顶部而不执行fprintf语句。breakcontinue语句可用在while循环和for循环中。

C语言版:

#include <stdio.h>
void main()
{
printf("建一个C工程来测试continue是否跳出循环体 ");
printf("continue只是不在执行后面内容,跳到了循环体的结尾处,进而进行下次循环 ");
int i=0;
for(i=1;i<5;i++)
{
if (i==3)
{
continue;
}
printf("i == %d ",i);
}
printf("跳出循环体 ");
}

结果:

原文地址:https://www.cnblogs.com/shuqingstudy/p/4856100.html