4个跳转语句return、goto、break、continue

   其中return、goto可以应用到程序的任何地方,break、continue和循环语句一起使用。

1、return
return用于从函数(不管是在while中调用还是for循环中调用)返回,使执行的函数返回到函数的调用点。
return的一般形式是: return 表达式
其中表达式就是函数返回的值。

一旦遇到return,程序就不会在继续往后执行。
函数使用return的次数不受限制,但是当函数遇到第一个return的时候,函数停止执行,返回到函数的调用点。
声明为void型的函数不能包括代值的return语句。

2、goto注意使用goto调到的指定标签必须是同在一个函数中,goto无法进行跨函数调用标签
基本上已经不再使用goto语句了。
基本形式:
goto 标签;
我们使用goto构造一个循环,例如:
int main(void)
{
int i=0;
Electrics:
           printf("%d ",i);
           i++;
if(i<10)
           goto Electrics;
getch();
}

3、break
在循环中break终止循环,也就是跳出循环(注,continue是跳过剩余代码,执行下一个循环)。执行循环下边的语句
在switch中终止一个case。用在循环和switch语句中,离开此应用场景无意义。
作用:  a.跳出单层循环

         b.跳出多层循环,需要标签语句的配合


例如:
int main(void)
{
     int t=0;
     for(;t<=10;t++)
     {
        if(t==9)break;
        printf("%d ",t);               
     }
     printf("/n");
     printf("hello c!");
     getch();
}
程序结果:
0 1 2 3 4 5 6 7 8
hello c!
当执行到t==9的时候,退出循环,执行printf("/n");语句。所以没有输出10。
当是嵌套的多层循环,break只是退出最内层的循环。
int main(void)
{
     int t=0;
   
     for(;t<=2;t++)
     {
        int j=0;
        for (;j<5;j++)
          {
                if(j>2)break;
                printf("j is %d /n",j);     
          }
         printf("t is %d /n",t);           
     }
     printf("/n");
     printf("hello c!");
     getch();
}
程序结果:
j is 0
j is 1
j is 2
t is 0
j is 0
j is 1
j is 2
t is 1
j is 0
j is 1
j is 2
t is 2
从程序结果可以看出,break每次都是终止内层循环。和外层循环没有关系。
hello c!


4、continue
简单的说就是跳过剩余代码(而break是跳出循环),执行下一个循环。

用在循环中,离开此应用场景无意义。

作用:    跳出单层循环的一次,可以继续下一次
例如:
int main(void)
{
     int t=0;
     for(;t<=10;t++)
     {
        if(t==9)continue;
        printf("%d ",t);               
     }
     printf("/n");
     printf("hello c!");
     getch();
}
将上面的程序中break改成continue,我们看看结果。
0 1 2 3 4 5 6 7 8 10
hello c!
当t==9的时候,程序没有执行下面的输出语句,直接到t++;执行下一个循环。所以没有输出9,但是输出了10。

(借鉴秦工的博客)











评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值