分支语句和循环语句(循环语句)

目录

1:while循环

1.1:while语句整的break和continue

2:for循环

2.1:for语句整的break和continue

2.2:for语句的循环控制变量

2.3:for循环的一些变种

3:do...while循环

do while循环中的break和continue


把一件事循环往复的去做,这就是循环,C语言里面有三种循环。

  • whlie
  • for
  • do while

1:while循环

我们已经掌握了if语句

if(条件)

        语句;

当条件满足的情况下,if在语句后的语句执行,否则不执行,这个语句只会执行一次。

如果想执行多次,我们可以使用while语句。

while 语法结构

while(表达式)

        循环语句;

例一:在屏幕上打印0到10的数字

#include <stdio.h>
int main()
{
	int a = 0;            //定义一个变量a
	while (a <=10 )       //while循环,如果a小于等于10就进入循环 
	{                     //注意while循环后面默认执行一条语句
                          //如果想执行多条语句,就需要用{}括起来
		printf("%d",a);   //打印a
		a++;
	}
	return 0;
}

1.1:while语句整的break和continue

在while语句的执行流程中是有break和continue,一个意思是打断,一个意思的继续,下面我们就来认识他们的用法。

break

在我们的例一中加入break语句,他的执行效果就会如下图

 我们先加入了一个if语句,条件是a如果等于5,就break,可以看到他打印的效果变成了01234,由此可得:

其实在循环中只要遇到break,就停止后期的所有的循环,直接终止循环。 所以:while中的break是用于永久终止循环的。

continue


在我们的例一中加入continue语句,他的执行效果就会如下图

在这里代码就死循环了。

continue是用于终止本次循环的,也就是本次循环中continue后边的代码不会再执行, 而是直接跳转到while语句的判断部分。进行下一次循环的入口判断,上述中a会一直是5,然后一直判断,所以就死循环了。


2:for循环

for语法结构

         初始化       判断         调试

for(表达式1;表达式2;表达式3)

        循环语句;

使用for在屏幕上打印1-10

#include<stdio.h>
int main()
{
	int i = 0;
	for (i = 1; i <= 10; i++)
	{
		printf("%d",i);
	}

	return 0;
}

2.1:for语句整的break和continue

在for语句的执行流程中也是有break和continue,下面我们就来认识他们的用法。

break

如果我们在上述代码中添加break,他的运结果如下

 for循环中的break和while中的break用法是一样的,都是终止循环。

continue

如图所示我们会发现这次没有死循环,而是跳过了5,原因就是 continue跳过的是continue后边的代码,而在for循环中,调整语句(i++)已经在continue前面了,所注意这次知识跳过了本次循环,而不是成为死循环,由此可得,for循环比while循环更不容易写出死循环。

2.2:for语句的循环控制变量

1. 不可在for 循环体内修改循环变量,防止 for 循环失去控制。

2. 建议for语句的循环控制变量的取值采用“前闭后开区间”写法。

int i = 0;
//前闭后开的写法
for(i=0; i<10; i++)
{}
//两边都是闭区间
for(i=0; i<=9; i++)
{}

2.3:for循环的一些变种

for循环中的初始化部分,判断部分,调整部分是可以省略的,但是不建议初学时省略,容易导致问 题,如上所示,代码死循环了。

for循环时可以嵌套使用的。

如图所示它会打印9次hehe,因为第一个for循环里面会循环三次进到第二个for循环,

而第二个for循环也会运行三次。

如果我们省略掉初始化部分,这里就发生了变化。

当我们去掉初始化部分,他的结果就会打印三个hehe,之所以这样,是因为里面的for循环循环三次后,j永远都会是三,再进入循环里面他就不会改变,就是因为不能初始化。

使用多余一个变量控制循环

int x, y;
    for (x = 0, y = 0; x<2 && y<5; ++x, y++)
   {
        printf("hehe\n");
   }
 return 0;
}

这里满足条件的话,最终只会打印两个hehe

3:do...while循环

do...while语法结构

do

        循环语句;

while(表达式);

3.1 do语句的特点

循环至少执行一次,使用的场景有限,所以不是经常使用。

使用do...while在屏幕上打印1-10

 注:循环体里面超过两条语句一定要用大括号括起来

do...while语句和while语句的区别就是一个是先执行再判断,一个是先判断再执行

do...while语句里的循环至少执行一次

do while循环中的break和continue

break

在上述代码中添加break,运行结果如下

因为他是先执行再判断,所以5也会打印出来

continue

 这里可以看到,代码死循环了

因为continue直接跳过了里面的i++,所以i永远都是5。

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值