讲解C++的do while循环和循环语句的嵌套使用方法


用do-while语句构成循环
do-while语句的特点是先执行循环体,然后判断循环条件是否成立。其一般形式为:

  do
    语句
  while (表达式);

它是这样执行的:先执行一次指定的语句(即循环体),然后判别表达式,当表达式的值为非零(“真”) 时,返回重新执行循环体语句,如此反复,直到表达式的值等于0为止,此时循环结束。可以用下图表示其流程。

【例】用do-while语句求1+2+3+…+100。

#include <iostream>
using namespace std;
int main( )
{
  int i=1,sum=0;
  do
  {
   sum=sum+i;
   i++;
  }
  while (i<=100);
  cout<<"sum="<<sum<<endl;
  return 0;
}

可以看到:对同一个问题可以用while语句处理,也可以用do while语句处理。do while语句结构可以转换成while结构。

C++几种循环的比较:
1) for和while以及do while这3种循环都可以用来处理同一问题,一般情况下它们可以互相代替。

2) while和do-while循环,是在while后面指定循环条件的,在循环体中应包含使循环趋于结束的语句(如i++,或i=i+1等)。

for循环可以在表达式3中包含使循环趋于结束的操作,甚至可以将循环体中的操作全部放到表达式3中。因此for语句的功能更强,凡用while循环能完成的,用for循环都能实现。

3) 用while和do-while循环时,循环变量初始化的操作应在while和do-while语句之前完成。而for语句可以在表达式1中实现循环变量的初始化。
循环的嵌套

一个循环体内又包含另一个完整的循环结构,称为循环的嵌套。内嵌的循环中还可以嵌套循环,这就是多层循环。

3种循环(while循环?do while循环和for循环)可以互相嵌套。例如,下面几种都是合法的形式:

while( )
{
  while( )
  {…}
}


do
{
  do
  {…} while( );
}while( );


for(;;)
{
  for(;;)
  {…}
}


while( )
{
  do
  {…}while( );
}


for(;; )
{
  while( )
  {…}
}


do
{
  for (;;)
  {…}
}while( );


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3