一:分支结构
1> if语句
格式:if(表达式)
{ 条件体语句 }
表达式为一种判断条件,结果为逻辑值,即真(非0)或假(0);表达式一般使用算术表达式,关系表答案是,逻辑表达式,赋值表达式等。注意:逻辑值用0表示假,用非0数字表示真。
2> if else语句
格式:if(表达式)
{ 条件体语句1 }
else
{ 条件体语句2 }
表达式也是一种判断条件,如果结果为真(非0),则执行条件体语句1,如果结果为假(0),则执行条件体语句2。
提示:如果条件体语句只有一条语句,则可以不使用“{ }”大括号,否则必须使用“{ }”将多条条件体语句括起来,构成复合语句,不是用大括号时,条件体语句只到第一个分号后结束。
3> if ...else if ...else语句
格式:if(表达式1)
{ 条件体语句1 }
else if(表达式2)
{ 条件体语句2 }
...
else if(表达式n)
{ 条件体语句n }后面的语句就不需要执行了,
...
如果表达式1结果为真,则执行条件体语句1,后面的语句就不需要执行了;如果表达式1结果为假,就判断表达式2的结果,如果表达式2结果为真,则执行条件体语句2,后面的语句就不需要执行了;依此类推。
4> 循环语句的嵌套
简单的嵌套格式:
if(表达式1) (内嵌if else结构)
if(表达式2)
条件体语句1
else
条件体语句2
复杂的嵌套结构:
if(条件体语句1)
if(表达式2) (内嵌if else结构)
{ 条件体语句2 }
else
{ 条件体语句3 }
else (内嵌if else结构)
if(表达式3)
{ 条件体语句2 }
else
{ 条件体语句3 }
...
重点要掌握if...else的匹配问题,匹配原则:else总是与前面最近的且尚未配对的if(或else if)相匹配,构成if...else结构。
5> switch case多分支选择结构
格式:
switch(表达式)
{
case 常量1 : 条件体语句1;
case 常量2 : 条件体语句2;
...
case 常量n : 条件体语句n;
default : 条件体语句n+1;
}
switch是一种对分支选择结构,表达式的结果类型必须与常量值的类型相匹配,然后判断该执行哪一条条件体语句,若表达式的值i与常量值i相匹配,则依次执行第i,i+1,i+2...条语句,若表达式的结果类型和常量值的类型都不匹配,则执行default后面的条件体语句。
注意:表达式可以使用任意类型;case和常量之间一定要有空格;case中常量的值必须互不相同;case和default后面的条件体语句如果有多条,可以不使用{ };default的可以在任意位置。
break关键字:放在条件体语句后,若执行完某一条件体语句 ,想要停止执行后面的语句,则可以在此条件体语句后面使用break停止执行后面的语句;跳出switch结构。
二:循环结构
1> while循环
结构:
循环初值;
while(循环条件)
{
循环体;
步进;
}
循环从给定的初值开始,每次先判断循环条件;当循环条件为逻辑真(非0)时从,执行循环体;每执行一次循环体就判断一次循环条件;当循环条件为逻辑假(0)时,跳出循环体,循环结束,继续执行while循环后面的语句。循环条件一般为关系,逻辑,算术表达式。
注意:如果循环体有多条语句,则必须放入{ }大括号内,否则只执行它后面的第一条语句。
2> do while循环
结构:
循环初值;
do
{
循环体;
步进;
}while(循环条件)
循环开始时,先执行一遍循环体,再计算循环条件的值,若为逻辑真(非0)时,继续执行循环体;直到循环体的值为逻辑假(0)时,退出循环体。
提示:第一次执行循环体时不需要判断循环条件,因此,循环体至少执行一次。
3> for循环
结构:
for(表达式1(循环初值);表达式2(循环条件);表达式3(步进))
{
循环体;
}
先计算表达式1的值,再判断表达式2,如果表达式2的值为逻辑真(非0),则执行循环体,然后计算表达式3的值;之后再判断表达式2的值,直到表达式2的值为0时跳出循环,循环结束,执行for循环后面的语句。
注意:for循环中,各要素均可省略,但要在适当位置进行补充,以保证循环能正确执行。
break和continue关键字:
break关键字是在循环条件仍为真的情况下,提前结束循环,然后执行循环之外的程序。
continue关键字是在循环条件仍为真的情况下,结束本次循环,继续执行下一次循环。