03流程控制语句

if 语句,switch 语句,goto 语句,循环语句

[注]流程控制语句是为了实现程序控制而产生的

一丶if语句

格式:

最简单的if语句

if(表达式)
{
  //语句块
}

[逻辑] 当程序从上往下执行,执行到if 语句时,先判断表达式的值;如果表达式的值为“真”,执行语句块;否则,不执 行语句块

升级版本1

if(表达式)
{
    //语句块1
}
else
{
    //语句块2
}

[逻辑] 当程序执行到if-else语句时,先判断表达式的值;如果表达式的值为“真”,执行语句块1;如果表达式的值 为“假”,执行语句块2

升级版本2

if(表达式1)
{
    //语句块1
}
else if(表达式2)
{
    //语句块2
}
//......
else
{
    //语句块n
}

[逻辑] 当程序执行到if语句时,首先判断表达式1的值;如果表达式1的值为“真”,执行对应的语句块1,跳到if语句后继 续执行其他代码;如果表达式1的值为“假”,继续判断表达式2的值,表达式3的值......直到某个表达式的值 为“真”,执行对应表达式的语句块,跳到if语句后继续执行其他代码

当前面所有表达式的值都为“假”时,才会执行最后else中的语句块

当前面所有表达式的值都为“假”,并且最后也补需要执行其他代码,这时可以省略else分支

二丶goto 语句

[注] goto 语句在实际开发运用很少

goto 语句的格式有两种

格式1:

goto 标号;
......
标号:

格式2:

标号:
......
goto 标号;

[逻辑] 当程序执行到goto语句时,立即无条件跳转到对应的标号处,继续往下执行其他代码

[goto语句的特点]

​ (1)goto语句构成的代码,代码结构不是很清晰,不太容易看懂

​ (2)goto不能跨函数访问,多个函数之间使用goto语句跳转容易导致程序崩溃

三丶switch语句

switch语句,也称为“开关语句”

格式:

switch(整型表达式)
{
    case 标号1:语句块1;break;
    case 标号2:语句块2;break;
   ......
    default:语句块n;break;
}

​ [注] {}中的每个case和default都称为是switch得一个分支,case可以有多个,default最多有一个

[注] case,default 后的break 语句是根据需求添加的

[注] default分支可以放置在任何一个case分支前/后

[注] case 后的标号一般是常量表达式

[逻辑] 当程序执行到switch语句时,先计算整型表达式的值,根据整型表达式的值,和每个case后的标号值进行匹配,如果和某个标号的值匹配成功,执行对应 标号后的语句块

当整型表达式的值无法和任何一个标号值匹配时,默认执行default后的语句块

switch语句可以嵌套使用,同样if语句也可以嵌套使用

如果是switch语句嵌套使用,内层switch语句中的break只可以结束内层switch

四丶循环语句--while

格式:

while(条件表达式)
{
    //循环体
}

[逻辑] 当程序执行到while语句时,先判断条件表达式的值是“真”还是“假”

当表达式的值为“真”时,执行循环体,然后再去判断表达式的值

直到表达式的值为“假”时,退出循环

[注] 当第一次判断表达式的值时,表达式就为“假”,循环体一次也不会执行

[注] while语句中,可以配合break,continue语句来实现循环的控制

[break] 程序执行到break语句,while循环立即退出

[continue] 程序执行到continue语句,会结束当次循环,进入下次循环

五丶do-while循环

[注] do-while循环中也可以使用break,continue语句,作用和在while循环中一样

格式:

do
{
    //循环体
}
while(条件表达式);

[逻辑] 当程序执行到do-while语句时,先执行一次循环体,然后再去判断表达式的值

如果表达式的值为“真”,执行循环体,然后再去判断表达式的值

如果表达式的值依然为“真”,执行循环体,然后再去判断表达式的值,直到表达式的值为“假”,循环退出

[注] 当第一次判断表达式的值就为“假”,循环体已经执行过一次

[注] do-while循环一般用在游戏开发中

六丶for 循环

for循环的一般格式:

for(初始化表达式;判断表达式;自增/自减表达式)
{
    //循环体
}

[逻辑] 当程序执行到for循环语句时,先执行表达式1,然后判断表达式2的值

当表达式2的值为“真”,执行循环体 ,然后执行表达式3,再去判断表达式2的值,直到表达式2的值为“假”,循环退出

[注] for循环语句中也可以使用break,continue语句

你可能感兴趣的:(03流程控制语句)