引言:
在学习C语言的一段时间后,我对于分支和循环语句有了一定的理解,这篇文章就是是为了帮助大家理解它们并学习如何去使用。
一、控制语句是什么
C语言支持三种结构:顺序、选择和循环。而控制语句就是用于控制程序和执行流程,以实现程序的各种结构(其中分支和循环语句就属于控制语句)。
在学习分支语句和循环语句前,我们先要了解一下控制语句。
C语言有9种控制语句,分为下面三类:
- 条件判断语句也叫分支语句:包括if语句、switch语句
- 循环执行语句:包括do while语句、while语句、for语句
- 转向语句:包括break语句、goto语句、continue 语句、return语句
虽然有这么多条语句,但是大家心里也不要害怕,接下来就让我们一个一个来学习
二、分支语句
(一)if语句
(1)逻辑
在C语言中特别规定,0为假,非0为真。
而if语句的形式为:
if(判断条件)
{
语句块
}
或者
if(判断条件)
{
语句块
}
else
{
语句块
}
如图所示:
若条件为真,则执行大括号里的语句块,若条件为假,则跳过大括号的内容
注:我们还可以使用if嵌套,如图所示:
这里的else if 就可以看作将if嵌套在else里面,构成多种判断
有了嵌套if语句,就可以完成更多复杂逻辑的判断
(二)switch语句
除了
if
语句外,C语⾔还提供了
switch
语句来实现分⽀结构
可以将switch
语句看作是⼀种特殊形式的
if...else
结构,⽤于判断条件有多个结果的情况。它把多重 的 else if
改成更易⽤、可读性更好的形式。
switch
(expression)
{
case
value1: statement
case
value2: statement
default
: statement
}
上⾯代码中,根据表达式
expression
不同的值,执⾏相应的
case
分⽀。如果找不到对应的值,
就执⾏
default
分⽀。
如图所示:
![](https://i-blog.csdnimg.cn/blog_migrate/552497e6ccbf76de0a5b8f88974428a8.png)
注:
•
switch
后的
expression
必须是整型表达式
•
case
后的值,必须是整形常量表达式
•
case 和后边的数字之间必须有空格
•
每⼀个 case
语句中的代码执⾏完成后,需要加上
break
,才能跳出这个switch语句
三、循环语句
(一)while循环
1.1while的用法
while循环的一般形式为:
while(表达式)
{
语句块:
}
若表达式里的内容为真(非0),则执行语句块的内容,直到表达式的内容为假(0),跳出循环
简单举个例子:
(二)for循环
for循环更加的简洁也更加常用,for循环的一般形式为:
for(表达式1;表达式2;表达式3)
{
语句块;
}
表达式1 ⽤于循环变量的初始化
表达式2 ⽤于循环结束条件的判断
表达式3 ⽤于循环变量的调整
意思就是:
⾸先执⾏ 表达式
1
初始化循环变量,接下来就是执⾏ 表达式
2
的判断部分, 表达式
2
的结果如果
==0,则循环结束; 表达式
2
的结果如果!=0则执⾏循环语句,循环语句执⾏完后,再去执⾏表 达式
3
,调整循环变量,然后再去 表达式
2
的地⽅执⾏判断, 表达式
2
的结果是否为0,决定循环是否继
续
举个例子:
![](https://i-blog.csdnimg.cn/blog_migrate/6ced2893f122f80502ec735ff6eca138.png)
(三)do while循环
还有一种与while相似的循环叫做do while循环。do while循环的一般形式为:
do{
语句块;
}while(表达式);
while
和
for
这两种循环都是先判断,条件如果满⾜就进⼊循环,执⾏循环语句,如果不满⾜就跳
出循环;
⽽
do while
循环则是先直接进⼊循环体,执⾏循环语句,然后再执⾏
while
后的判断表达式,表
达式为真,就会进⾏下⼀次,表达式为假,则不再继续循环
举个简单的例子:
![](https://i-blog.csdnimg.cn/blog_migrate/ccd1493824c9e3f33c3f61b7e12875d4.png)
在
do while
循环中先执⾏图上的“语句”,执⾏完语句,在去执⾏“判断表达式”,判断表达式的
结果是!=0,则继续循环,执⾏循环语句;判断表达式的结果==0,则循环结束。
所以在
do while
语句中循环体是⾄少执⾏⼀次的,这是
do while
循环⽐较特殊的地⽅。