C语言中三种结构分别是:顺序结构、循环结构、选择结构,if语句和swith来实现分支结;使⽤ for 、 while 、 do while 实现循环结构。
1、if语句
(1)、例如:输⼊⼀个整数,判断是否为奇数
(2)、else语句
else语句用来判断表达,用if.....else语句进行表达
例:输⼊⼀个整数,判断是否为奇数,如果是奇数打印是奇数,否则打印数偶数。
(3)、分支中包含多条语句
默认在
if
和
else
语句中默认都只控制⼀条语句
(4)、嵌套else
在
if else
语句中,
else
可以与另⼀个
if
语句连⽤,构成多重判断。
例:
要求输⼊⼀个整数,如果是正数,再判断是奇数还是偶数,并输出;如果不是正数则输出不
是整数。
2.switch语句
(1)、 switch
语句是⼀种特殊形式的
if...else
结构,⽤于判断条件有多个结果的情况。
格式
对表达式
expression
不同的值,执⾏相应的
case
分⽀。如果找不到对应的值,
就执⾏
default
分⽀。
•
switch
后的
expression
必须是整型表达式
•
case
后的值,必须是整形常量表达式
(2)、switch语句中的break
break是用来跳出swith语句的,如果将case语句中的break去掉,则显示结果为:“7、余数是1、余数是2”因为没有break来结束所以会一直往下执行。
(3)、switch语句中的default
swith后的表达式中的值⽆法匹配代码中的
case
语句的时候,在语句中加入default子句。
格式:
3、while循环
while 语句的语法结构和 if 语句⾮常相似。
(1)、if和while格式的对比
(2)、if和whille 的区别
比如这段代码,if满足条件后打印出来,只打印一次结果;如果将if换为while,则显示出来的满足条件结果;会一直死循环的打印结果。
(3)、while语句的执⾏流程图
例:在屏幕上打印1-10的值
4、for循环
(1)、格式
for(表达式/1、表达式2、表达式3、)
表达式1 ⽤于循环变量的初始化
表达式2 ⽤于循环结束条件的判断
表达式3 ⽤于循环变量的调整
(2)、例子
在屏幕上打印1-10的值
计算1~100之间3的倍数的数字之和
5、do-while循环
(1)、格式
不同点
while
和
for
这两种循环都是先判断,条件如果满⾜就进⼊循环,执⾏循环语句,如果不满⾜就跳
出循环;
⽽
do while
循环则是先直接进⼊循环体,执⾏循环语句,然后再执⾏
while
后的判断表达式,表
达式为真,就会进⾏下⼀次,表达式为假,则不再继续循环。
在
do while
语句中循环体是⾄少执⾏⼀次的,这是
do while
循环⽐较特殊的地⽅。
(2)、
例:在屏幕上打印1~10的值
6、beak和continue语句
•
break
的作⽤是⽤于永久的终⽌循环,只要
break
被执⾏,直接就会跳出循环,继续往后执
⾏。
•
continue
的作⽤是跳过本次循环
continue
后边的代码,在
for
循环和
while
循环中有所
差异的。
(1)、while循环中的break和continue
break如图所示,满足条件当i=5之后,break就终止循环了;如果将break换位为continue,相当于i=5后直接跳过continue之后的代码,跳过了下面的i=i+1,所以i一直等于5,陷入了死循环。
(2)、for循环中的break和continue
break在for语句中也是终止循环的意思,但是如下图
输出结果为:1、2、3、4、5、6、7、8、9、10、
因为continue跳过了它那一段,直接回到i++这里。
所以,在
for
循环中
continue
的作⽤是跳过本次循环中
continue
后的代码,直接去到循环的调
整部分。未来当某个条件发⽣的时候,本次循环⽆需再执⾏后续某些操作的时候,就可以使⽤
continue
来实现。
7、do while循环中的break和continue
do.while
语句中的
break
和
continue
的作⽤和
while
循环中⼏乎⼀模⼀样
8、goto语句
C语⾔提供了⼀种⾮常特别的语法,就是
goto
语句和跳转标号,
goto
语句可以实现在同⼀个函数
内跳转到设置好的标号处。
(1)、如图,跳过了中间haha的打印。
(2)、如何跳出goto语句
本来
for
循环想提前退出得使⽤
break
,⼀个
break
只能跳出⼀层
for
循环,如果3层循环嵌套
就得使⽤3个
break
才能跳出循环,所以在这种情况下我们使⽤
goto
语句就会更加的快捷。