/*
在循环中间设置单个或者多个退出点,可以使用的语句有:break语句、continue语句、goto语句. return
*/

(1)break :break语句语句用于循环或 switch 语句中,作用立刻退出包含break的循环(break在哪一层循环,就退出哪一层)或者退出一个switch语句,同时只有当 break 出现在这些语句时,这种形式的 break 语句才是合法的。
         1)break在循环体内,强行结束循环的执行,也就是结束整个循环过程,不在判断执行循环的条件是否成立,直接转向循环语句下面的语句。
         2)当break出现在循环体中的switch语句体内时,其作用只是跳出该switch语句体。
         break 可用于C提供的全部三种循环结构,其作用是跳出循环。如果 break 位于循环嵌套中的一个内循环,则仅跳出该内循环。
         如果一个循环的终止条件非常复杂,那么使用break语句来实现某些条件比用一个循环表达式来表达所有的条件容易得多
代码示例:

int main()
{
  for(int i=; i<=; i++)
{
if(i == )
break;
printf("%d,", i);
}
}
//输出结果:12345 int main()
{
for(int i=; i<=; i++)//2式
{
if(i == ) break; //可退出2式
for(int j=; j<=; j++)//1式
{
//if(j == 3) break; //可退出1式
printf("%d,", j);
}
printf("\r\n");
}
return ;
}

(2)continue :continue语句用于循环语句中,作用是不执行循环体剩余部分,直接进行下次循环。常见的就是与if连用。
代码示例:

int main()
{
int i;
for(i=; i<; i++)
{
if(i% == )
continue; //如果i为偶数 调用continue; printf("%d,", i); //输出i值
}
} /*
这个程序会循环10次,i值为0到9.
当i为0,2,4,6,8时,满足i%2==0的条件,执行continue语句,直接去for(i=0; i<10; i++)里面的i++,然后进入下次循环,不会执行printf语句。
所以这个程序只会输出奇数值,即 1,3,5,7,9.
*/

(3)goto :被称为无条件转移语句,它通常与条件语句配合使用来改变程序流向,使得程序转去执行语句标号所标识的语句。
代码示例:

#include <stdio.h>

int main()
{
int a=,b=; if(a > b)
{
goto aa;
} printf("hello\n"); aa:
printf("s\n");
printf("world\n"); //如果a>b成立,结果为 "s", "world" //如果a>b不成立,结果为 "hello", "s", "world" return ;
}

(4)return :结束正在运行的函数,并返回函数值。(return的功能为跳出循环并且跳出函数,再返回函数值。以上示例代码都带有return 0)
代码示例:

#include <stdio.h>

int foo (int n)
{
int p = n + ;
return p;
} int main (void)
{
printf ("p = %d\n", foo ());
return ;
} /*
输出结果:
p = 3
*/

退出循环break,continue,return,goto分析的更多相关文章

  1. 有关于break,continue,return的区别和代码分析

    今天,用代码和结果直接解释break,continue,return的区别 1.break代码 public static void breakTest() { //break的讲解 for(int ...

  2. js中退出语句break,continue和return 比较

    js中退出语句break,continue和return 比较 在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是 ...

  3. js中退出语句break,continue和return 比较(转)

    原链接:http://blog.163.com/ued_er/blog/static/199703159201210283107315/ js中退出语句break,continue和return 比较 ...

  4. js中的break ,continue, return (转)

    面向对象编程语法中我们会碰到break ,continue, return这三个常用的关键字,那么关于这三个关键字的使用具体的操作是什么呢?我们在使用这三关键字的时候需要注意和需要理解的规则是什么呢? ...

  5. 详解C#break ,continue, return

    C#编程语法中break ,continue, return这三个常用的关键字的学习对于我们编程开发是十分有用的,那么本文就向你介绍break ,continue, return具体的语法规范. C# ...

  6. js中的break,continue,return

    js中的break,continue, return (转) 面向对象编程语法中我们会碰到break ,continue, return这三个常用的关键字,那么关于这三个关键字的使用具体的操作是什么呢 ...

  7. break,continue,return的区别

    break,continue,return的区别 break 当break语句用于循环语句时,会终止执行循环,并执行循环后代码(如果有的话). function main() { for(var i ...

  8. JS流程控制语句 退出循环break 在while、for、do...while、while循环中使用break语句退出当前循环,直接执行后面的代码。

    退出循环break 在while.for.do...while.while循环中使用break语句退出当前循环,直接执行后面的代码. 格式如下: for(初始条件;判断条件;循环后条件值更新) { i ...

  9. Java流程控制,for,switch,while.break,continue,return

    Java流程控制,for,switch,while.break,continue,return

随机推荐

  1. Java初学者 编译能通过,但显示有错误,并且不会自动弹出方法的解决方法。

    因为使用了 @Data注解,关于注解的作用尚未深入理解,此处先做一个记录. 解决方法是,添加lombok插件

  2. SQL Server ->> 时间函数: EOMONTH, DATEFROMPARTS, TIMEFROMPARTS, DATETIMEFROMPARTS, DATETIMEOFFSETFROMPARTS

    上面几个函数都是SQL Server 2012新增的时间函数. EOMONTH 返回传入时间的月结束日,返回数据类型为DATE SELECT EOMONTH(GETDATE()) 结果为 DATEFR ...

  3. 【Leetcode】【Medium】Word Break

    Given a string s and a dictionary of words dict, determine if s can be segmented into a space-separa ...

  4. S/4HANA生产订单的标准状态和透明工厂原型状态的映射

    事务码CO03查看生产订单的状态: 从下面的界面能看出S/4HANA里生产订单在任意时刻可能存在多个状态: 生产订单的ID和状态ID的关系是1:N,维护在数据库表VSAUFK里: 如何把上述SAP系统 ...

  5. 使用SAP C4C rule editor动态控制UI上某个按钮是否显示

    假设我想根据Sales Order的outbound delivery字段来控制这个Trigger Delivery按钮的动态显示: 首先Adapt->Edit Master Layout进入K ...

  6. hive 的一个小问题

    hive查询语句中如果包含中文,如like '%奥巴马%' ,并且所查hive表中的数据是utf-8的,可能会查不出正确结果. 原因可能是系统环境的LANG 设置不是utf-8,需要把环境变量LANG ...

  7. jquery 判断元素可见性

    $(".more_list").is(":visible") $(".more_list").is(":hidden")

  8. CALayer & bitmap Content

    Working with High-Resolution Images Layers do not have any inherent knowledge of the resolution of t ...

  9. UVa 1349 - Optimal Bus Route Design(二分图最佳完美匹配)

    链接: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...

  10. [HNOI2007]紧急疏散EVACUATE

    嘟嘟嘟 看数据范围,第一反应觉得爆搜是不是能骗点分,但发现爆搜太难写了,于是就开始想想正解…… 正解大概猜到了是网络流,但是怎么把时间这个条件加入到图的内容中,却困扰了我好半天,总是感觉把这种不同维度 ...