c语言分支循环语句

         哈喽,我是LoveHutao,今天来学习c语言的分支循环语句 (明明上一个还是c语言常见概念

◔ ‸◔?,先说明不是我懒啊(๑´0`๑))。

        好了废话不多说让我们开始今天的学习吧!说到c语言的分支循环语句,if语句的重要性不言而喻,相信很多人就是不了解计算机语言也知道有for,if,while这类语句(不会吧不会有人没听说过吧┑( ̄Д  ̄)┍),那么我们首先认识if语句:

        if在英语里有如果的意思,为了方便记忆,计算机里的if同样是如果的意思,但是想让计算机按你所说的做,你不可能对着它的麦克风大声说:(如果x=1那么打印x等于1~~~,你需要像下面这样

f0e47d91bd304a0980484af7505d8ad9.png

这时候我们按下ctrl+f5

2c84465706514d4aa9f624b6fe9e4b46.png

 

 

98169f7d95d346198d34849851012432.jpeg

锵锵~

       啊好今天的学习到此结束,大家再见!

 

 

 

      开玩笑的(不会有人信了吧),我们知道了if是如果的意思,上图if()括号里面就是你需要它执行的条件,例如x==1,x>1,x<1等等,当x的值符合括号内的需求时,if就会执行下面的语句,具体怎么用呢,让我们比较一下a和b的大小吧!

81ea90eb919449b1b7c9906c783859a3.png

ebf96c022e8a4db2b92a85a0dff83ac0.png

我这里忘记加库函数stdio了,半天都看不出毛病,大家不要和我犯一样的低级错误啊!(´-ωก`)

        好,有人可能就说了 if 我知道了那之前的else ,else if又是啥意思。else通常和if连用,表示如果不等于if中的数,那么就执行我这个下面的代码(记得如果有多行if,else if,else后都要加大括号包裹住你的函数),而else if其实可以理解为下面的缩写

80acde65a01148218089937a1c00d615.png

        这就是if语句的用法了,比较简单,就不去过多的解释了。(提醒如果你想让if表示出1<a<2可以用a>1&&a<2,里面&&表示的就是并且的意思,除此外还有||表示或者(两者满足其一就行)的意思,!=表示不等于)。

        好了,现在我们知道了if是什么,下面让我们看一个与if相似的函数switch吧!

        知道了if的作用那么switch的作用就好理解了让我们看一段代码:

58830f88c0f0465790c7fa01b6d7525d.png

这里插一嘴,break的意思是退出循环。

        这里当我们输入1时switch就会从入口case 1进去,同理输入2时就会从入口case 2进去,当我们输入的数不在case所包括的范围内时,如上图,当输入的值大于三或者小于一时,switch找不到入口就可以从default中进入。switch是开关,转换的意思,相当于选择各个入口的开关,是不是很形象呢?我们输入一个1

66a070c03d4f4621adb11b88757f7c0e.png

可以看到这里就输入了我们的“zhiyin”。

        上面我们讲的都属于分支语句,想必大家对分支语句都有些了解了,那我们就可以请出分支语句的好搭档循环语句了!

        循环语句有for循环,while循环,do while循环。我们就从使用最多的for循环开始讲起吧。

        想必分支,循环就要复杂的多了,这里我找了个for循环的流程图(自己懒得画,借用一下别人的图片应该可以吧?)34b0b4a09e29407eb315413bd16f49e1.png

        如图所示,而for循环的格式就是for(表达式1;表达式2;表达式3)+语句

        例如我想打印出1~10那么我们就可以像下面这样

f46d38b2654a4865a29599f1befe95c1.png

这样我们就可以输出1~10的整数啦!

        而for是可以与if联用的,例如我们想打印出1~100中所有的偶数,那么只需要像下面这样:

0903b0c3c1684c7bba9626d2becbd872.png

        这样我们就可以打印出1~100的偶数了!

        而while循环则与for循环不同,下面是while循环的流程图

afddb3cb39934d14a3147ee882874da5.png

            而while循环的格式就是while(条件继续的条件)+循环体

            同样while也能打印出1~10

            02708cdfa3584530b46e5fe324221836.png

            既然是循环那么while理所当然的能与if联用,后面的do while也是如此。

        虽然while和for都是循环但是它们两者并不相同,但是大部分情况while语句和for语句是可以互相替换的(具体什么区别我也不知道[诶嘿]),

        懒得写了,上图do while流程(`⌒´メ)。

   552be6c89313482abe3a6d545f4685eb.png

 我们可以看出do while和while几乎是一样的,而while和do while唯一的区别就是while是先执行while里的语句在往下运行,而do while正好与之相反,首先执行语句,再进行while里的语句进行循环,格式为:do+循环语句+while(条件继续的条件)。

        讲到这里估计有人和我一样有这么一个问题,既然分支和循环能联合使用,那么循环与循环是否能够联合使用呢?答案是肯定的,我们把循环的联合使用叫做嵌套,运用好嵌套我们就能简化我们的程序,例如我想要打印出九九乘法表,我总不能一个一个打出来吧,那我们就需要像下面这样        

eb777d3170194c05bba68940504d6448.png

这里for循环执行一次后进入下一个for循环,而下一个for循环结束后第一个for循环才进行第二次输出(第一个for相当于分针,第二个for相当于秒针,只有当秒针转完一圈后分针才转动一次,而循环结束的时候就相当于时针,当时针进行一次则循环结束输出。)[总之就是想流水线提高效率

(#`皿´),不知道说的清不清楚,急死了]

798288d994ab4dc1b21748b292d1f593.png

 

利用循环的嵌套我们就能够轻松的得到久久乘法表啦,而不需要一个一个printf。当然循环的嵌套不止有for和for可以,for和while,do while直接都可以进行嵌套,从而让程序达到你想达到的目的。

        介绍完循环的嵌套,去尝试过的小伙伴们肯定遇到过循环退不出去,或者结束后不能去到想到的地方的苦恼中,这时候就需要我们的goto函数啦!

        通过goto我们能够使函数跳到自己所标记的地方去,多说无益,让我们看看下面的语句

23dc75e1102e4b2d9ad9708cbb7b3907.png

f0f915694a8d43b08e0961d9698c8dc8.png

当然goto不止能用在循环里用于跳出循环,它也可以用在很多场合来跳过一些过程,这么看来goto函数似乎无所不能,但是它的缺陷也很明显,当你的函数中有多个goto型的函数时,你原本的逻辑可能会因此而混乱,导致函数到处乱跳,而且长期使用goto会导致我们计算机语言思维的缺陷,变成一个只会用goto的可汗(红黄蓝๑乛◡乛๑)。

        好了这次我们学习了循环分支及其嵌套,诶好像忘了什么,是你,条件操作符!

        条件操作符又叫三目操作符,它的计算逻辑是:如果 exp1 为真, exp2 计算,计算的结果是整个表达式的结果;如果 exp1 为假, exp3 计算,计算的结果是整个表达式的结果。

        通过条件操作符我们就可以实现类似于分支的功能,其格式为:exp1 ?exp2:exp3

其中exp表示的是表达式,例如x=1?x+1:x*2,如下图所示

a4fdcbdecf4c49feabdc58d4cc4492cd.png

这样就替代了if的作用

d7e14f099ad6424dad1301cab4a32b35.png

       好了今天的内容就讲到这里了,下次我们利用这些知识做一个猜数字游戏,拜拜!(终于写完了ε=(´ο`*)))唉)【如果有哪里讲错的或者理解有问题的请各位大佬提醒我!】

 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值