三种循环语句的详解和使用(for,while,do-while)

**注意这里,我用了个临时变量 i 来控制循环的次数,并且是在括号内定义的,这样的好处很多(比在for外面定义好),就不细说了。

同时增值表达式不是只能写i++的(i–,i += 2,i * =3,…)这些都是可以写的,根据自己的玩法写[哈哈哈]

我们先来细说循环执行的过程:**

1.首先就是执行 int i = 0 (这句话只会在刚开始循环时执行一遍,后面就不会执行了)

2.然后执行循环控制语句(i<n)

如果循环控制语句为真(此时 i<n),执行循环体(就是那句输出语句)

如果循环控制语句为假(此时 i>=n),结束本次循环

3.执行增值表达式(i++)

4.继续从2.开始往下执行(直到循环控制语句为假,退出循环)

运行结果:(当然就是输出10遍“重复做的事”,不信你数[自豪])

在这里插入图片描述

**for循环能帮我们干的事有很多很多…

注意这点:初始化表达式 ,循环控制语句 ,增值表达式 ,这三个位置都是可以不写的,至于想要怎么玩就看你们自己的了。[嘻嘻]**

int n=10; // 规定循环多少次

int i = 0;

for(;😉

{

if(i>=10)

break;

printf(“重复做的事\n”);

i++;

}

这样写的代码是和上面一样的效果的:(不信你试试)

在这里插入图片描述

同时,break和continue配合循环使用,会有很不一样的效果的,在下面我会说的。

while 循环

==================================================================

这种循环也是很常用的,也十分好理解,其实跟for循环差不多,只不过是把初始化条件写到外面了,把增值表达式写到里面了。

结构(书上一般都会这样写)


while循环的结构如下:

while(循环控制表达式)

{

语句序列

}

**我:这种循环就很简单直白了,如果循环表达式为真就执行循环体(上面说过了),每次执行循环体前都要先判断下,知道循环表达式为假就结束循环。

读者:什么是循环体,再说一遍

笔者:得令[毕恭毕敬]**

在这里插入图片描述

循环体:大括号内的所有内容,可以不止一句。

用法(那么简单你绝对一看就会)


一般来说用 while循环用于倒数或者不清楚循环次数的遍历

int n=10;

while(n>0)

{

printf(“看到这里的小可爱最帅/最美\n”);

n–;

}

**我们只要写好控制语句,每次执行循环体前就会先判断下循环控制表达式是否为真,为真就继续执行循环,否则就结束循环。

注意:如果在循环体内忘了对影响循环控制表达式的变量(就是这个 n)进行改变,就会使这个循环变成死循环(一直执行)**

**运行结果:

10遍当然表达不了我内心的赞美,奈何篇幅有限[卑微]**

在这里插入图片描述

do-while 循环

=====================================================================

**我:这种循环有区别于while循环

读者:这不是废话吗**

在这里插入图片描述

**我[鼻青脸肿]:先别打,还没说完

读者:继续说吧

我[卑微,哭泣]:while循环执行循环体前都会先判断下(执行循环控制表达式),而do-while循环会在执行循环控制表达式前先执行一遍循环体(这第一遍循环体是不进行判断的,直接执行)**

结构(书上是这样的)


do

{

语句序列

}while(循环控制表达式);

用法(就这?)


这种循环用的不是很频繁,但是有时用这种循环会给力,很合适。

int n=10;

do

{

printf(“此时的n=%d\n”,n);

n–;

}while(n>0);

**注意:千万不要漏掉那个 n-- ,不然也会是死循环。

当n=0时就会跳出循环了,因为执行循环体的条件是n>0**

运行结果:

在这里插入图片描述

**读者:不看也知道

我[卑微]:我错了,都怪我多此一举**

在这里插入图片描述

如何中途跳出循环呢

===================================================================

有时在我们执行循环的时候并不知带具体的循环次数,或者我们想要剔除某种特殊的情况,这是就需要用到循环的两个小跟班了(break和continue)

不叫小跟班的代码:

for(int i=1;i<=10;i++) //打印1-10这10个数

{

printf(“%d\n”,i);

}

运行结果:

在这里插入图片描述

break(大哥)


break为啥是大哥呢,因为break说让循环停,立马就结束了循环。

**break:打印6前面的数

循环:不是输出10个数吗

break:把嘴给我闭上,我说个数,到6的就给我结束,不准打印**

叫上break的代码:

  • 27
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值