3.1 if-else与else-if语句
if(表达式)
语句1
else
语句2
其中else部分是可选的,先计算表达式的值,非0的话,则执行语句1,否则执行语句2。else总是与最近的一个if配对。如
if (n > 0)
if (a > b)
z = a;
else
z = b;
明显 else与最近的一个if配对。为了不产生歧义,建议加入花括号来加以区分。
if (n > 0)
if (a > b)
z = a;
else
z = b;
if (表达式)
语句
else if (表达式)
语句
else if(表达式)
语句
else
语句
这种if语句序列是编写夺路判定最常用的方法,其中的个表达式的值将被一次求值,一旦某个表达式结果为真,则执行与之相关的语句。
3.2 switch语句
switch(表达式) {
case 常量表达式: 语句序列
case 常量表达式 : 语句序列
defalt: 语句序列
}
在switch中,case的作用只是一个标号,因此,某个分支中的代码执行玩后,程序将进入下一个分支继续执行,除非在程序中现实的条转。跳出switch语句最常用的方法是使用break语句与return语句。break语句还可以从while、for、do循环体中跳出。
3.3 while循环与for循环
while(表达式)
语句
中,先求表达式,如果其值非0,则执行语句,并在求表达式的之。直到表达式的值为假为止。
for (表达式1; 表达式2; 表达式3)
语句
等价于
wile (表达式2){
语句
表达式3;
}
3.4 do-while语句
do
语句
while (表达式);
在这一结构中,先执行循环体中的语句部分,然后再求表达式的值。如果表达式的值为真,则在执行语句,以此类推。当表达式的值为假,则循环终止。
3.5 break语句和continue语句
continue语句和break语句是相关联的,但他没有break常用,都是跳出本次循环,在while语句中意味着立即执行测试部分;在for循环中,则意味着使控制转移到递增循环变量部分。continue语句不用与switch语句。