退出循环break,continue,return,goto分析
/*
在循环中间设置单个或者多个退出点,可以使用的语句有: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分析的更多相关文章
- 有关于break,continue,return的区别和代码分析
今天,用代码和结果直接解释break,continue,return的区别 1.break代码 public static void breakTest() { //break的讲解 for(int ...
- js中退出语句break,continue和return 比较
js中退出语句break,continue和return 比较 在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是 ...
- js中退出语句break,continue和return 比较(转)
原链接:http://blog.163.com/ued_er/blog/static/199703159201210283107315/ js中退出语句break,continue和return 比较 ...
- js中的break ,continue, return (转)
面向对象编程语法中我们会碰到break ,continue, return这三个常用的关键字,那么关于这三个关键字的使用具体的操作是什么呢?我们在使用这三关键字的时候需要注意和需要理解的规则是什么呢? ...
- 详解C#break ,continue, return
C#编程语法中break ,continue, return这三个常用的关键字的学习对于我们编程开发是十分有用的,那么本文就向你介绍break ,continue, return具体的语法规范. C# ...
- js中的break,continue,return
js中的break,continue, return (转) 面向对象编程语法中我们会碰到break ,continue, return这三个常用的关键字,那么关于这三个关键字的使用具体的操作是什么呢 ...
- break,continue,return的区别
break,continue,return的区别 break 当break语句用于循环语句时,会终止执行循环,并执行循环后代码(如果有的话). function main() { for(var i ...
- JS流程控制语句 退出循环break 在while、for、do...while、while循环中使用break语句退出当前循环,直接执行后面的代码。
退出循环break 在while.for.do...while.while循环中使用break语句退出当前循环,直接执行后面的代码. 格式如下: for(初始条件;判断条件;循环后条件值更新) { i ...
- Java流程控制,for,switch,while.break,continue,return
Java流程控制,for,switch,while.break,continue,return
随机推荐
- C++11标准之右值引用(rvalue reference)
1.右值引用引入的背景 临时对象的产生和拷贝所带来的效率折损,一直是C++所为人诟病的问题.但是C++标准允许编译器对于临时对象的产生具有完全的自由度,从而发展出了Copy Elision.RVO(包 ...
- python 图形界面
Python自带的库是支持Tk的Tkinter,使用Tkinter,无需安装任何包,就可以直接使用. Tk是一个图形库,支持多个操作系统 导入Tkinter包的所有内容: from tkinter i ...
- gtest学习
介绍 学习如下gtest课程,总结主要的部分 1.玩转Google开源C++单元测试框架Google Test系列(gtest)之一 - 初识gtest 2.玩转Google开源C++单元测试框架Go ...
- February 1 2017 Week 5 Wednesday
If you can't get a miracle, become one. 如果奇迹没有眷顾你,那就让自己变成奇迹吧. If you think you are bad luck, you did ...
- HBuilde H5开发,关于JSON的Storage存储
今天踩坑了,在这里记一下. 我想做一个列表,开始是一个一个复制粘贴,然后发现这样太不灵活了,如果我有更多内容要填难道还要再一个一个复制吗? 所以我想到直接用JS动态生成最好,我的思路是这样的: //首 ...
- dom4j.jar有什么作用?
om4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个非常非常优秀的Java XML API,具有性能优异.功能强大和极端易用使用的特点,同时它也是一个开放源代 ...
- was缓存以致web.xml更改无效
was缓存导致web.xml更改无效 在项目中经常遇见这样的问题:修改应用的配置文件web.xml后,无论重启应用还是重启WebSphere服务器,都不能重新加载web.xml,导致修改的内容无效. ...
- 把list(对象)集合中的(某个属性),放到数组中。
List<SpecialguardInfo> list=specialguardOrderService.findfreeSg(date1,date2);//得到list对象集合 Stri ...
- [转]MFC子线程中更新控件内容的两种办法
一.概述 每个系统中都有线程(至少都有一个主线程),而线程最重要的作用就是并行处理,提高软件的并发率.针对界面来说,还能提高界面的响应能力.一般的,为了应用的稳定性,在数据处理等耗时操作会单独在一个线 ...
- idea中查看类层级class hierarchy
idea中,我当前设置的是eclipse的快捷键(从eclipse转过来的) 一般情况下,查看类的子类Ctrl+T 如何以树的形式查看完整继承关系,快捷键:F4 效果如下: 尤其从根节点查看的时候,完 ...