顺序结构
程序按照语句的书写次序顺序执行。
选择结构
判断选择结构又称条件分支结构,是一种基本的程序结构类型。
在程序设计中,当需要进行选择、判断和处理的时候,就要用到条件分支结构。
条件分支结构的语句一般包括if语句、if–else语句、switch–case语句。
if语句在二选一的条件下,Switch则是在多选一的条件下。都是对条件表达式进行判断,针对不同结果,决定要执行的语句。
switch语句(多分支)
switch(表达式)
{
case 常量表达式1: 语句组1; break;
......
case 常量表达式n: 语句组n; break;
default: 语句组n+1;
}
switch语句的执行过程:
①先求出表达式的值;
②将表达式的值依次与case后面的常量表达式值相比较,若与某一常量表达式的值相等,则转去执行该case语句后边的语句序列,直到遇到break语句或switch语句的右花括号为止。
③若表达式的值与case语句后的任一常量表达式的值都不相等,如果有default语句,则执行其后边的语句序列。如果没有default语句,则什么也不执行。
循环结构
C++提供了3种循环语句:for语句、while语句和do-whi1e语句。
在循环语句中,重复执行的操作叫做循环体。循环体可以是单条语句、块语句甚至是空语句。
while循环
while循环有两种循环控制语句实现,while语句和do…while语句。
while语句
格式: while(条件表达式) 语句
while(conditon) //0为false,非0为true { statement(s); }
while语句执行过程为:先计算条件表达式,如果该表达式的值为非零,则执行循环体的语句;
否则退出循环,不执行循环体,而执行该循环语句后面的语句。
也就是说,当循环条件为真时反复执行循环体。因此,while循环也被叫做“当”型循环。
do while 语句
格式:do 语句 while(条件表达式);
do…while语句执行过程为:先执行循环体后判断条件表达式的值,若表达式的值为真则反复地执行循环体,直到表达式的值为假才退出循环。
因此,do…while语句也被叫做“直到”型循环。
区别:在一定条件下,while循环可能一次都不执行,而do…while循环在任何条件下都至少要执行一次。
for循环
格式:for(表达式1;表达式2;表达式3) 语句
就是:for( 循环变量赋初值;循环条件;循环变量增值) 循环体
for是关键字,语句为循环体,它可以是一条语句,也可以是复合语句,还可以是空语句。
for(init;conditon;increment
)//0为false,非0或什么也不写为true { statement(s); }
for循环语句的执行过程: ① 计算表达式1的值。 ② 计算表达式2的值,并进行判断,如果表达式2的值为0(false)则退出该循环,执该循环体后面的语句; 如果表达式2的值为非0(true)转(3) 。 ③ 执行循环体的语句。 ④ 计算表达式3的值。 ⑤ 转 ②
跳转语句
提供:三个转移语句:break语句、continue语句和goto语句。
主要用于改变程序中语句的执行顺序,使程序从某一语句有目的地转移到另一语句继续执行。
break语句
break语句的功能是:中断所在循环体或switch...case语句块,跳转本层循环体外。
continue语句
continue语句的作用是跳过本次循环的其它语句,直接进入下一次循环。
continue语句只能用在循环语句的循环体内。在循环执行的过程中,如果遇到continue语句,程序将结束本次循环,接着开始下一次的循环。
goto语句
格式: goto 语句标号;
程序跳到语句标号位置继续执行。语句标号属于标识符,格式:语句标号: 语句
其中的语句可以是任意语句,如:{、 while()、 for()...等。
goto语句的使用限制在一个函数体内,即goto语句只能在一个函数范围内进行语句转移。在同一函数中,语句标号应该是唯一的。