经过一系列的学习,现在对于c语言的循环也是有了一个初步的了解:
-
if语句
-
switch语句
-
for循环
-
while循环
-
do while循环
-
break和continue语句
以上五个语句就是所接触到的基础语句
那么接下来做一个详细的介绍,并且发表一下自己的见解。
1.if语句
if的英文意思是“是否、如果”的意思,if语句所表达的也是和它的意思非常有关系
判断一个语句是否正确,正确就运行下面的语句,不正确则跳过下面的语句
接下来贴上一个代码方便理解(之后默认都会贴一张代码方便大家观阅)
这条代码则是输入一个数,判断他是正数,负数还是0,可知if对于要运行一个需要某个条件成立的一条或多条语句非常适用。
注意:1.if默认控制一个语句(如果不加大括号)2.else,else if默认与最近的if匹配,并不是和哪个对齐就匹配哪个
2.switch语句
switch选择分支语句相比if来说,运用环境会稍微少一些。
switch 语句是⼀种特殊形式的 if...else 结构,⽤于判断条件有多个结果的情况。它把多重
的 else if 改成更易⽤、可读性更好的形式。
![](https://i-blog.csdnimg.cn/blog_migrate/07575401d190b0721434c0098a7c7cf3.png)
这段是一段猜数字游戏中的switch语句,表达式中输入的input决定了游戏的进程:开始,退出或重新判断(
switch表达式和case后的表达式只能是整形表达式)
即输入1就进入game函数,游戏开始,输入0退出游戏,输入其他数重新判断。
上述的代码中,我们要注意的点有:
1. case 和后边的数字之间必须有空格
2. 每⼀个 case 语句中的代码执⾏完成后,需要加上 break ,才能跳出这个switch语句。
3.for语句
for
循环是三种循环中使⽤最多的,
for
循环的语法形式如下:
1
for
(
表达式
1
;
表达式
2
;
表达式
3
)
for语句大多数用于检索和有条件的筛选
![](https://i-blog.csdnimg.cn/blog_migrate/114df3fe43f758778bd1fb470a0d84e0.png)
这是通过for语句打印1~10的数字
![](https://i-blog.csdnimg.cn/blog_migrate/65f7acd9ce9ab276fb85a6f39c57a71b.png)
for语句的运行逻辑如上图,并且可以在语句中进行初始化:
1.初始化循环
2.判断循环条件
3.执行下列语句
4.调整
4.while语句
while语句是循环中的一种,他通过判断表达式是否为真来决定是否循环,例如:
这段语句也是通过循环打印1到10之间的数字,不过相较于for循环来说,可能会稍微烦那么一些。
如果按for循环来说就是:
for(int i =1;i<=10;i++)
{
printf("%d ",i);
}
这样的话所有的步骤都可以在for循环内一步解决。
这是for循环和while循环的主要区别,由此可见,for循环在这种情况下更有效率一些。
5.do while循环
在循环语句中
do while
语句的使⽤最少,它的语法如下:
![](https://i-blog.csdnimg.cn/blog_migrate/09853479ddeb0414e7420bb7c5239c7b.png)
相较于while语句来说,do while语句只是单纯比while语句多运行一次
while语句是一开始判断表达式,而do while语句是一开始执行完一遍再判断表达式是否继续循环
while 和 for 这两种循环都是先判断,条件如果满⾜就进⼊循环,执⾏循环语句,如果不满⾜就跳
出循环;
⽽ do while 循环则是先直接进⼊循环体,执⾏循环语句,然后再执⾏ while 后的判断表达式,表
达式为真,就会进⾏下⼀次,表达式为假,则不再继续循环。
![](https://i-blog.csdnimg.cn/blog_migrate/3bb8b737d3f75d4290cf897b126f2d91.png)
同样的,这是用do while循环打印1~10的数字,首先不管怎么样先将1打印出来,其次判断打印接下来的数字,相较于while和for语句又麻烦了不少。
主要使用于游戏开始,因为打开游戏必须得要进行一次运行再决定要不要退出
6.break和continue语句
对于循环和分支语句来说,break和continue语句也是必不可少的
在循环执⾏的过程中,如果某些状况发⽣的时候,需要提前终⽌循环,这是⾮常常⻅的现象。C语⾔中
提供了 break 和 continue 两个关键字,就是应该到循环中的。
• break 的作⽤是⽤于永久的终⽌循环,只要 break 被执⾏,直接就会跳出循环,继续往后执
⾏。
• continue 的作⽤是跳过本次循环 continue 后边的代码,在 for 循环和 while 循环中有所
差异的。
![](https://i-blog.csdnimg.cn/blog_migrate/02c3e7b632f1905d7b90aee90dd2f341.png)
还是老规矩,循环打印1~10的数字
不过这次有些不同了,我想让他打印到4就不打印了,那我就用break语句,让他等于5后直接退出循环,结束打印。
那同样的,我想打印到4之后,跳过5怎么办,那就有以下代码了
![](https://i-blog.csdnimg.cn/blog_migrate/b02685594273075046234a0abc98c2d4.png)
用continue跳过本次循环下列语句,直接进行下一次的循环或者进行到调整部分。
其实最后还有一个goto语句,不过这里不做过多的解释
goto
语句如果使⽤的不当,就会导致在函数内部随意乱跳转,打乱程序的执⾏流程,所以我们的建
议是能不⽤尽量不去使⽤;但是
goto 语句也不是⼀⽆是处,在多层循环的代码中,如果想快速跳出
使⽤
goto
就⾮常的⽅便了。
以上是我的见解,如果大家有什么想法或修正,请指正(●'◡'●)