简单掌握C++编程中的while与do-while循环语句使用


While 语句
重复执行语句,直到表达式计算为零。
语法

  while ( expression )
statement

备注
expression 的测试在每次执行循环前发生;因此 while 循环执行零次或更多次。 表达式必须是整型、指针类型或包含明确的整型或指针类型转换的类类型。
当中断、导航或回归在语句体中执行时,也可以中止while 循环。请使用continue语句来结束当前迭代但不退出while循环。 继续 将控件传递给下一轮循环 while。
以下代码使用 while 循环从字符串中剪裁尾随下划线:

// while_statement.cpp

#include <string.h>
#include <stdio.h>
char *trim( char *szSource )
{
 char *pszEOS = 0;

 // Set pointer to character before terminating NULL
 pszEOS = szSource + strlen( szSource ) - 1;

 // iterate backwards until non '_' is found 
 while( (pszEOS >= szSource) && (*pszEOS == '_') )
  *pszEOS-- = '\0';

 return szSource;
}
int main()
{
 char szbuf[] = "12345_____";

 printf_s("\nBefore trim: %s", szbuf);
 printf_s("\nAfter trim: %s\n", trim(szbuf));
}

在循环顶部计算终止条件。如果没有尾随下划线,循环不执行。


do-while 语句
反复执行 statement,直到指定的终止条件 (expression) 的计算结果为零。
语法

  do
statement
while ( expression ) ;

备注
终止条件的测试将在每次执行循环后进行;因此 do-while 循环将执行一次或多次,具体取决于终止表达式的值。 do-while 语句还可在语句体中执行 break、goto 或 return 语句时终止。
expression 必须具有算法或指针类型。执行过程如下所示:
执行语句体。
接着,计算 expression。如果 expression 为 false,则 do-while 语句将终止,控制将传递到程序中的下一条语句。如果 expression 为 true(非零),则将从第一步开始重复此过程。
以下示例演示了 do-while 语句:

// do_while_statement.cpp
#include <stdio.h>
int main()
{
  int i = 0;
  do
  {
    printf_s("\n%d",i++);
  } while (i < 3);
}


« 
» 
快速导航

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