2014年计算机二级C++考点解析:基本控制结构_第3页

考试站(www.examzz.com)   【考试站:中国教育考试第一门户】   2014年11月3日

  3.4 循环结构 

  1for语句 

  for语句是C+ +中最常用且功能最强的循环语句,其语法格式如下: 

  for(<表达式1>;<表达式2>;<表达式3>) 

  <语句> 

  其中,for为关键字;<表达式1>是for循环的初始化部分,它一般用来设置循环控制变量的初始值;<表达式2>是for循环的条件部分,它是用来判定循环是否继续进行的条件;<表达式3>是for循环的增量部分,它一般用于修改循环控制变量的值;<语句>称为for循环的循环体,它是要被重复执行的代码行,for循环体可以是单条语句,也可以是由花括号包围起来的复合语句。 

  for语句的执行过程是: 

  (1)计算<表达式1>的值; 

  (2)计算<表达式2>的值,如果此值不等于0(即循环条件为“真”),则转向步骤(3);如果此值等于0(即循环条件为“假”),则转向步骤(5); 

  (3)执行一遍循环体<语句>: 

  (4)计算<表达式3>的值,然后转向步骤(2); 

  (5)结束for循环。 

  C+ +中for语句的书写格式非常灵活,这主要表现为: 

  (1)<表达式1>可以是变量声明语句,即循环控制变量可在其中定义。 

  (2)<表达式1>可以省略。这时,应在for语句之前给循环控制变量赋初始值。注意:省略<表达式1>时,其后的分号不能省略。 

  (3)<表达式2>可以省略。这时,for语句将不再判断循环条件,循环会无限次地执行下去。这种情况通常称为“死循环”。 

  (4)<表达式3>可以省略。这时,应在循环中对循环控制变量进行递增或递减操作,以确保循环能够正常结束。 

  (5)三个表达式可同时省略。这时,for语句显然也是一个“死循环”。 

  (6)<表达式1>、<表达式2>和<表达式3>都可以是任何类型的C+ +表达式。 

  2while语句 

  while语句是一种形式较为简单的循环语句,其语法格式如下: 

  while(<表达式>)<语句>其中,while为关键字:<表达式>是while循环的条件,它用于控制循环是否继续进行;<语句>称为while循环的循环体,它是要被重复执行的代码行;while循环体可以是单条语句,也可以是由花括号括起来的复合语句。实际上,while语句是for语句省略掉表达式1和表达式3的特殊情况。 

  while语句的执行过程是: 

  (1)计算<表达式>的值,如果此值不等于0(即循环条件为“真”),则转向步骤(2);如果此值等于0(即循环条件为“假”),则转向步骤(4); 

  (2)执行一遍循环体<语句>; 

  (3)转向步骤(1); 

  (4)结束while循环。 

  从中可以看出,while语句将在<表达式>成立的情况下重复执行<语句>;如果在第一次进入while循环时<表达式>就不成立,则<语句>一次也不会执行。 

  注意: 

  (1)由于while语句中缺少对循环控制变量进行初始化的结构,因此在使用while循环之前对循环控制变量进行初始化显得很重要。 

  (2)在while循环体中不要忘记对循环控制变量的值进行修改,以使循环趋向结束。 

  3do…while语句; do…while语句也是一种循环语句,它的功能类似于while语句,只是将循环的判定条件移到了循环体之后,其语法格式如下: 

  do<语句>while(<表达式>); 

  其中,do和while为关键字;<语句>称为do…while循环的循环体,它是要被重复执行的代码行,do……while循环体可以是单条语句,也可以是由花括号包围起来的复合语句;<表达式>是do……while循环的条件,它用于控制循环是否继续进行。 

  注意:在do…while语句中最后的分号不能丢掉,它用来表示do……while语句的结束。 

  do……while语句的执行过程是: 

  (1)执行一遍循环体<语句>; 

  (2)计算<表达式>的值,如果此值不等于0(即循环条件为“真”),则转向步骤(1);如果此值等于0(即循环条件为“假”),则转向步骤(3); 

  (3)结束do…while循环。 

  注意: 

  (1)在使用do…while循环之前同样需要对循环控制变量进行初始化;在do…while循环中仍然不要忘记对循环控制变量进行修改,以使循环趋向结束,避免死循环的发生。 

  (2)do…while循环与while循环的不同之处在于:do…while循环的循环体在前,循环条件在后,因此do…while循环体在任何条件下(即使不满足循环条件)都至少被执行一次。而while循环条件在前,循环体在后,当条件不满足时,循环体有可能一次也不会执行。这一点正是在构造循环结构时决定使用while语句还是do…while语句的重要依据。 

  循环的嵌套 

  在一个循环结构中又完整地包含着另一个循环结构称为循环的嵌套。C+ +中三种类型的循环语句都可以相互嵌套,并且嵌套的层数没有限制。程序设计中有许多问题需要使用循环结构的嵌套来解决。


相关文章