当前位置:编程学习 > C/C++ >>

C++之控制结构

1.语句
语句是程序中可以独立执行的最小单元,语句由分号结束。语句类型可以有:
一条语句:
1.赋值语句:a=a+b;
2.空语句:   ;  //
3.说明语句:int i=5;(变量说明可以出现在程序中的任何一个语句可以出现的地方,提高了变量的灵活性。不同于C)
块语句:由一对{ }括起来的多条语句。
{
int i =5;
i=(i+5)/2;
cout<<i<<endl;
}
2.控制结构
为了描述程序的流程,人们使用一种流程图的工具。流程图是用来描述算法(程序)的工具,具有简洁、直观、准确的优点。
 
                \
                              
2.1顺序
2.2选择
判断选择结构又称条件分支结构,是一种基本的程序结构类型。条件分支语句包括:if语句、if...else语句、switch...case语句。
 
2.2.1 If语句
If (表达式)语句;
                       
说明:
1.表达式通常是一个关系表达式或逻辑表达式。
2.语句可以是一个单条语句或是一个块语句,甚至是一个空语句。
执行过程:
先计算表达式的值,如果表达式的值为真,则执行语句段;否则跳过语句,直接执行If语句后面的语句。
 
2.2.2 If...else语句
If(表达式)语句1;
else 语句2;
          
执行过程:
先计算表达式的值,如果表达式的值为真,则执行语句1,否则执行语句2。
If语句可以嵌套:常用于多次判断选择。
 
2.2.3 swich...case语句
switch (表达式)
{
Case 常量表达式1:[语句块1][break;]
Case常量表达式2:[语句块2][break;]
        .......
       Case 常量表达式n:[语句块n][break;]
       [default:语句块n+1]
}
 
说明:
1.表达式值和常量表达式的值只能是字符型或整型。
2.[ ]表示其中的内容是可选的。
3.break语句、default语句也是可选的。
执行过程:
1.求表达式的值
2.将表达式的值依次与Case后面的常量表达式的值相比较,如果相等,则转去执行Case语句后边的语句序列,知道遇到break语句或switch语句由花括号为止。
3.如果表达式的值与Case语句后面的任一常量表达式的值都不相等,如果有default语句,则执行,否则什么也不执行。
 
2.3循环
循环语句由for语句、while语句、do...while语句
2.3.1 for语句
for(表达式1;表达式2;表达式3)语句
可看做:for(循环变量赋初值;循环条件;循环变量增值)循环体
执行过程:
1.计算表达式1的 值。
2.计算表达式2的值,表达式2的值为0(false)则退出循环,执行循环体后面的语句;如果表达式的2的值为非0(true),则转3.
3.执行循环体的语句。
4.计算表达式3的值
5.转2.
for语句的循环体内可以包含另一个完整的循环结构。
 
2.3.2 while语句
while(条件表达式)语句
            
执行过程:
先计算条件表达式,如果该式的值为非0(true),则执行循环体的语句;否则退出循环,不执行循环体,执行循环体后边的语句。while语句也称作“当”型循环。
 
2.3.3 do...while语句
Do 语句 while(条件表达式);
        
执行过程:
先执行循环体后判断条件表达式的值,若表达式的值为真,则反复执行循环体,直到表达式的值为假才退出循环。Do...while循环也称作“直到”型循环。
 
while循环与Do...while循环区别:
在一定的条件下,while循环可能一次都不执行,而Do...while循环再任何条件下都至少执行一次。
2.4 break、continue、goto语句
2.4.1 break语句:
break;
说明:
中断所在循环体或switch...case语句块,跳转本层循环体外。
 
2.4.2 continue语句:
continue;
说明:
从循环体中当前位置跳转到循环的开始出,继续执行循环体。在执行循环的过程中,如果遇到continue语句,程序将结束本次循环,接着开始下一次的循环。
 
2.4.3 goto语句:
goto 语句标号;
语句标号:语句
说明:
使程序无条件的转向语句标号后边的语句。goto语句从循环体中跳出,但不得用goto语句从循环体外跳到循环体中去。
 
补充:软件开发 , C++ ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,