一、程序的结构(三种)
1、顺序结构
2、分支结构
3、循环结构
二、分支结构(选择结构)
语法形式
1、if 语句
(1)最简单 if 语句
语法: if (表达式) 任意合法表达式
{
语句块
}
如果表达式是成立(非0),就会执行语句块。否则不执行。
语句块:任意条(一条,多条,空)语句,每一条语句后面都得加“;”
if后面的语句 任意条语句 建议都加“{ }”
如果不加“{ }”默认只管到一句话。
(2)else 子句
语法: if (表达式)
{
语句块1
}
else
{
语句块2
}
如果表达式成立,执行语句块1,否则执行语句块2。
else 必须与if 一起用,if 在 else前。
(3)else if
else 必须与if 一起用,if 在 else前。
if(表达式1)
{
语句块1
}
else if(表达式2)
{
语句块2
}
else if(表达式3)
{
语句块3
}
……
else if(表达式n)
{
语句块n
}
else
{
语句块n+1
}
如果表达式1成立,就执行语句块1
否则判断表达式2是否成立
如果表达式2成立,就执行语句块2
否则判断表达式3是否成立
…………………………
如果表达式n成立,就执行语句块n
否则执行语句 n+1
2、if 语句的嵌套
if 语句中又有 if 语句
条件里面又有分条件。
if (表达式1)
{
if(表达式2)
{
…………
}
else
{
…………
}
}
注意:每个if 语句和 else子句都建议打括号,同时记得“缩进”,有层次感,易于阅读。
else 与 if 匹配问题
if( )上面
if( )
else
语句1;
else
语句2;
if ( ) 语句3;
else
语句4;
语句5;
技巧:先匹配最上面 else,else 总是和它上面、最近的、同一级的、未匹配的if 进行匹配,if、else 默认管理下一句。
if else语句是用于范围匹配;switch只能是值的匹配。
3、switch语句
语法:
switch(表达式)
{
case 常量表达式1: 语句块1; break;
case 常量表达式2: 语句块2; break;
……
default: 语句块;break;
}
说明:
(1) switch 后面()中的表达式的值必须是整数。
(2) case 后面的表达式是常量表达式(不能出现变量),并且他的值也必须是整数。
(3) break 不是一个语句后面必须要的,可以省略。
(4) default 也不是一个必须要的,可以省略。
(5) 每个 case 后的常量表达式的值不能重复。
switch 语句是用来把“表达式”的值一一列举出来,与 case 后的常量表达式的值进行匹配。
当匹配到某个 case 时,就从该 case 语句一直执行下去,直到遇到 break,或者 switch 的“}”。
如果没有匹配到 case 对应的值,就会执行 default 后面语句,直到遇到 break,或者 switch 的“}”。