概述
循环结构
--1-- 结构循环
1.1 while循环
1.2 do…while循环
1.3 for循环
--2-- break和continue
2.1 break关键字
2.2 continue关键字
--------------------------
【写在开头:】
『
生活中的循环:
C语言中的循环:
循环结构是程序中一种很重要的结构。其特点是,在给定的条件成立时,反复执行某程序段,直到条件不成立为止。
C语言中提供了多种循环语句:
1)goto语句和if构成循环(已经被摒弃)
2)while语句
3)do-while语句
4)for语句
构成循环的几个条件:
一般来说一个循环需要以下几部分构成
1)循环控制条件
循环退出主要依据
2)循环体
循环过程中重复执行的代码块。
3)能够让循环结束的语句(递增、递减、真、假等)
』
--1-- 结构循环
1.1 while循环
1)语法格式
while(条件)
{
语句1;
语句2;
…
语句n;
}
2)while循环执行特点
当条件成立时一直执行程序体。
3)示例
从键盘上输入一个数n,计算1+2+3…+n的值。
//定义变量
int i = , n = , sum = ;
//接受键盘输入n并赋值给变量n
printf("请输入累加上限:n");
scanf("%d",&n);
//while循环条件小于n
while (i <= n) {
sum += i; //累加
i++;
}
printf("从1累加到%d的值是:%dn",n,sum);
4)补充
scanf的原理:如果输入缓冲区不为空,则不会让用户再次输入内容,而直接冲缓冲区中继续获取。
最简单的死循环:while(1);
1.2 do…while循环
1)语法格式
do{
语句1;
语句2;
…
语句n;
}while(条件);
2)do…while循环的特点:
不管while中的条件是否成立,至少会执行一次循环体。
3)while和dowhile的循环类型不同
while循环是一个当型循环,当条件满足时再执行循环体;
do…while循环是直到型循环,先执行循环体,再判断条件,直到条件为假时结束。
4)示例
int x = -;
do{
printf("do...whilen");
x--;
}while (x > ); //do...while循环 无论条件是否满足,循环体都会执行一次
1.3 for循环
1)for语法格式
C语言中for语句的使用最为灵活,完全可以代替while语句
一般形式:
for(表达式1;表达式2;表达式3){
语句块;
}
2)for循环执行过程
执行顺序:
1)先求表达式1,给i初始化
2)求解表达式2,若其值为真(非0),则执行for语句中指定的内嵌语句-->表达式3
3)执行表达式4
-->循环完一遍之后执行第二步,再依次往下
注意:步骤1)在整个循环中只执行一次
3)for循环的其他形式
1)表达式1省略
int i = ;
for (; i < ; i++){
printf("%d", i);
}
2)表达式1、3省略
int i = ;
for (; i < ;){
printf("%d", i);
i++;
}
3)表达式1、2、3省略
int i = ;
for(;;){
if (i < ){
printf("%d", i);
i++;
} else{
break;
}
}
4)最简单的for循环
for (; ; );
5)for循环的嵌套使用
打印图形
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
分析:
内层循环打印一行,外层循环5次打印5行
for (int j = ; j < ; j++) {
for (int i = ; i < ; i++) { //内层打印行
printf("*t");
}
printf("n");
}
--2-- break和continue
2.1 break关键字
break和continue都可以用在循环中,用来跳出循环/结束循环
break用法
break语句通常用在循环和开关语句中。
注意:
1)break对if-else不起作用。
2)break用于跳出当前循环(结束当前循环)。
3)break影响的是当前的这个循环,对外层循环不起作用
示例
计算r=1到r=10时圆的面积,直到面积大于100为止
分析:
圆的面积 area = 3.14 * r * r;
//计算r=1到r=10时圆的面积,直到面积大于100为止
for (int r = ; r <= ; r++) {
double area = 3.14 * r * r;
if (area > ) {
break; //面积大于100 结束循环
}
printf("area = %.2fn", area);
}
2.2 continue关键字
continue用于结束本次循环,继续下次循环
continue只用在for、while、do-while等循环体中,常与if语句一起使用,用来加速循环
示例
把100-200之间不能被3整除的数输出。
分析:
被3整除时结束本次循环进入下一次循环
//把100-200之间不能被3整除的数输出
for (int i = ; i <= ; i++) {
if (i % == ) {
continue; //整除则跳出本次循环
}
printf("i = %dn", i);
}
总结:
break跳出循环后循环就结束了,而continue跳出循环后还继续下一次循环。这就是break和continue最大的区别。
【写在结尾:】
『下雨了,滴答滴答的...从小最喜欢的,就是听雨的声音...』
MATLAB循环结构:break+continue+嵌套
break语句:终止当前循环,继续执行循环语句的下一语句: continue语句:跳过循环体的后面语句,开始下一个循环: 例:求[100,200]之间第一个能被21整除的整数 :200 %循环语句 ) ...
049 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 11 break语句
049 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 11 break语句 本文知识点:break语句 break语句 break语句前情回顾 1.swi ...
bash中选择结构、循环结构与break、continue
if两种选择结构 if 测试条件; then 程序块 else 程序块 fi if 测试条件1; then 程序块 elif 测试条件2; then 程序块 ... elif 程序条件n; then ...
iOS学习之C语言循环结构
一.while循环 while (循环条件) { 循环体: } // 1.定义循环变量 int time = 1; // 2.循环条件 while ( ...
C语言--循环结构
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvenVveW91MTMxNA==/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...
day05-Python运维开发基础(双层循环、pass/break/continue、for循环)
# ### 双层循环练习 # 十行十列小星星 j = 0 while j<10: # 逻辑代码写在下面 # 打印一行十个小星星 i = 0 while i<10: print(" ...
for循环里的break,continue和return有什么差别
break: 此语句导致程序终止包含它的循环,并进行程序的下一阶段(整个循环后面的语句),即,不是跳到下一个循环周期而是退出循环.如果break语句包含在嵌套循环里,它只跳出最里面的循环. 如下代码 ...
循环(for,while,until)与循环控制符(break,continue)
一.for循环 第一种风格 for ((;;;))(类似C语言风格) do command done 例子:for ((i=0;i<10;i++)) do echo $i done 第二种风 ...
iOS学习03C语言循环结构
1.while循环 while (循环条件) { 循环体: } // 1.定义循环变量 ; // 2.循环条件 ) { // 3.循环体 printf("%dn", ...
随机推荐
python 获取日期
转载 原文:python 获取日期 作者:m4774411wang python 获取日期我们需要用到time模块,比如time.strftime方法 time.strftime('%Y-%m-% ...
java中实现链表(转)
分析: 上述节点具备如下特征: 1. 每个节点由两部分组成(存储信息的字段,存储指向下一个节点的指针) 2. 节点之间有着严格的先后顺序. 3. 单链表节点是一种非线性的结构,在内存中不连续分配空间. ...
POJ 3678--Katu Puzzle(2-SAT)
感觉这题比较裸,表现出了2-sat的本质. 不过构图我想的还是太简单了,a&b=1我只连了 a1->b1,b1->a1,但其实是不对的.这样连,a0和b0可以同时选到.应该连a0- ...
App Doc View Frame中指针的获取
// App中获取其它三项指针 void CSDIApp::OnApp() { // App // Doc CDocument *pDoc = ((CFrameWndEx *)m_pMainWnd)- ...
Bitmap上下合成图片
合成两张图片,上下叠加的效果: /** * 把两个位图覆盖合成为一个位图,以底层位图的长宽为基准 * * @param backBitmap 在底部的位图 * @param frontBitmap 盖 ...
js 实现数据结构 -- 栈
原文: 在 Javascript 中学习数据结构与算法. 概念: 栈是一种遵从先进后出 (LIFO) 原则的有序集合:新添加的或待删除的元素都保存在栈的末尾,称作栈顶,另一端为栈底.在栈里,新元素都靠 ...
iOS开发-Tom猫
// // ViewController.m // 20-tom猫 // // Created by hongqiangli on 2017/8/1. // Copyright © 李洪强. ...
CVE-2012-0158基于exp分析
CVE-2012-0158这个洞我之前分析过,漏洞战争这本书里也写过,但是都是用poc分析的,我这次找了一个弹计算器的exp来分析,感觉用poc和用exp还是不一样的,从exp分析要比从poc分析更复 ...
Set up the environment for driver compiling in Debian
1.check the kernel version $ uname -r --amd64 2.install the source code $ sudo apt-get install linux ...
[Excel]鼠标右键菜单没有新建Word、Excel、PPT怎么办?
很多朋友在安装好Office(2010或2013等)之后,发现右键新建中没有Word.Excel.PowerPoint等项,但是自己的Office却明明安装好了.这个时候该怎么办呢?这里,本文为大家提 ...
最后
以上就是儒雅月光为你收集整理的C语言循环结构中break,C语言-循环结构及break、continue的全部内容,希望文章能够帮你解决C语言循环结构中break,C语言-循环结构及break、continue所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复