C语言学习(八)-判断语句和循环语句2

在上一节的内容中,我们学习了判断语句和循环语句中的一种,for循环,今天我们将继续往下学习循环的另外两种形式,今天的内容同样十分重要,因此大家要打起精神,好好掌握。
好了,废话不多说,开搞!!!

while循环

基本用法

c语言中,除了上节讲的for循环外,最常用的另一种循环便是while循环了,该循环的使用方式如下:

while(条件)
{
你要干哈;
条件调整;
}

从其使用方式即可看出和上节的for循环差别很大,可以看出while循环

条件判断和条件调整并不在同一处进行
初始化在外部进行初始化

下面为一个使用while循环打印小于10的整数的示例代码:

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

运行代码其结果如下:
在这里插入图片描述

while循环中的终止

经过上节的学习,我们知道,在for循环的内部,如果如果不想让循环再次执行,可以使用break跳出循环,在while循环中,同样可以使用该命令终止循环,假设仍为上述代码,但当i=7时,我们不想循环了,即i=7跳出循环,那么打印的结果是不是0 1 2 3 4 5 6呢,示例代码如下:

#include<stdio.h>
int main()
{
    int i = 0;
    while(i<10)
    {
        if (i == 7)
        break;
        printf("%d\n",i);
        i++;
    }
    return 0;
}

保存编译并运行,可以得到以下结果:
在这里插入图片描述
确实是和我们分析的结果一致,也就是说

break在for循环和while循环中的作用一样,终止整个循环

while循环中的跳过

既然break的作用都和for循环中的一致,那么continue是否在while循环中具有同样跳出本次循环的功能呢(为啥跳出本次循环???回去补习),如果你忘记了为啥,请返回补习,入口如下:判断语句和循环语句1
此时我不想打印4这个数字,因为不吉利,那么我就使用该语句,当i=4时,跳出本次循环,下面上代码演示:

#include<stdio.h>
int main()
{
    int i = 0;
    while(i<10)
    {
        if (i == 4)
            continue;
        printf("%d\n",i);
        i++;
    }
    return 0;
}

那么结果真的会和我们想象的一样,打印出来0 1 23 5 6 7 8 9吗,编译运行,可以得到结果如下:
在这里插入图片描述
看到这里你可能有点疑问,怎么只打印0123呢,后面的数字呢,其实并不是这样,程序实则仍在运行,因为最后的光标仍在闪烁,并未结束,这就说明程序进入了死循环中,下面对该代码进行分析;
在这里插入图片描述
上述图片中,很好的解释了为什么陷入死循环中,那么如果我想实现不打印4打印其他的功能该如何做呢,此时需要将调整条件i++放在最上面,并且初始化的条件判断条件也需要进行改变,如下代码所示,即可实现功能:

#include<stdio.h>
int main()
{
    int i = -1;
    while(i<9)
    {
        i++;
        if (i == 4)
            continue;
        printf("%d\n",i);
        
    }
    return 0;
}

保存编译可以得到得到想要的结果如下所示:
在这里插入图片描述
因此我建议,在使用while循环continue命令时,一定要仔细谨慎,不然极有可能陷入死循环中。也即是说:

continue在while循环和for循环中的功能的确是一样的,都是跳过此循环的后续代码, 但是在使用时要注意细节,否则会产生不当的后果

do while循环

循环中的最后一种就是整个了,虽然其使用的频率不如前两种高,但仍需进行了解,其使用的基本条件如下:

do
{
你要干啥;
}
while(判断条件);

从上述的基本用法可以看到,此循环和前两种循环的最大差别就在于:

其先执行循环体的内容,然后再进行判断

也有就是有一种“先斩后奏,皇权特许”的风格,你问我西厂是什么,东厂管不了的……不好意思走错片场了,
下面仍以打印小于10的正整数为例:

#include<stdio.h>
int main()
{
    int i = 0;
    do 
    {
        // if (i == 4)
        //     continue;
        printf("%d\n",i);
        i++;
    }
    while (i<10);
    return 0;
}

运行结果如下所示:
在这里插入图片描述

do while中的终止与跳过

do while循环中的终止与跳过的用法同while循环,就不再此处进行过多的赘述了,在上文中讲解的较为清晰,大家不太理解的可以回看。

小结

至此,c语言中的判断语句和循环语句就全部讲解完毕了,这两节的内容的重要性无法用语言来表述,大家一定要认真认真再认真。
以上就是本文的全部内容了,感谢大家的观看,如果方便,谢谢大家点个赞和关注哦!
您的点赞或评论或关注是对我最大的肯定,谢谢大家!!!

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

机器 xiaohu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值