讲解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( );
时间: 2015-09-06

javascript 循环语句 while、do-while、for-in、for用法区别

前两个唯一的差别就是循环和判断的顺序不同,do-while比while多循环一次,我就不举例了. for循环相信大家也熟的不能再熟了,我们就看for-in这一句. 这个其实是针对数组的,js中数组的初始化也挺奇特的比如我们在script结点里写:(另外注意下数组的初始化,用的是中括号) "); var a=[3,4,5,7]; for(var test in a){ document.write(test+": "+a[test]+""); } -->

PHP循环遍历数组的3种方法list()、each()和while总结

①each()函数 each()函数需要传递一个数组作为参数,返回数组中当前元素的键/值对,并向后移动数组指针到下一个元素的位置.键/值对被返回带有4个元素的关联和索引混合的数组,键名分别为0.1.key和value.其中键名0和key对应的值是一样的,是数组元素的键名,1和value则包含有数组元素的值.如果内部指针越过了数组的末端,则each()返回FALSE.each()函数的使用如下所示: 复制代码 代码如下: <?php $contact = array("ID" =&

c++中do{...}while(0)的意义和用法

linux内核和其他一些开源的代码中,经常会遇到这样的代码: do{  ... }while(0) 这样的代码一看就不是一个循环,do..while表面上在这里一点意义都没有,那么为什么要这么用呢? 实际上,do{...}while(0)的作用远大于美化你的代码.查了些资料,总结起来这样写主要有以下几点好处: 1.辅助定义复杂的宏,避免引用的时候出错: 举例来说,假设你需要定义这样一个宏: 复制代码 代码如下: #define DOSOMETHING()\                foo1

C语言中while与do-while的介绍与注意事项

一.while和do-while的简介  1). while语句  语法: while(表达式){ 循环体; } 循环过程: 1.先判断表达式,是否为真,如果为真跳转到2,否则跳转到3 2.执行循环体,执行完毕,跳转到1 3.跳出循环 2). do-while语句 语法: do{ 循环体; }while(表达式);  注意:这个while后面的小括号必须接; 循环过程: 1.先执行循环体,执行完毕跳转到2 2.判断表达式的结果是否为真,如果为真,跳转到1,否则跳转到3 3.跳出循环 3). do

JavaScript While 循环 教程

JavaScript中的循环用来将同一段代码执行指定的次数(或者当指定的条件为true时). JavaScript Switch 声明 如果希望选择执行若干代码块中的一个,你可以使用switch声明: 语法: 复制代码 代码如下: switch(n)     {     case 1:       执行代码块 1       break     case 2:       执行代码块 2       break     default:       如果n即不是1也不是2,则执行此代码     

C++中的while循环和for循环语句学习教程

C++ while循环 while语句的一般形式如下: while (表达式) 语句 其作用是: 当指定的条件为真(表达式为非0)时,执行while语句中的内嵌语句.其流程图见下图. 其特点是:先判断表达式,后执行语句.while循环称为当型循环. 例:求1+2+3+-+100. #include <iostream> using namespace std; int main( ) { int i=1,sum=0; while (i<=100) { sum=sum+i; i++; }

详解JavaScript的while循环的使用

在写一个程序时,可能有一种情况,当你需要一遍又一遍的执行一些操作.在这样的情况下,则需要写循环语句,以减少代码的数量. JavaScript支持所有必要的循环,以帮助您在所有编程的步骤.  while 循环 在JavaScript中最基本的循环是while循环,这将在本教程中学习讨论. 语法 while (expression){ Statement(s) to be executed if expression is true } while循环的目的是为了反复执行语句或代码块(只要表达式为t

C语言 while语句的用法详解

在C语言中,共有三大常用的程序结构: 顺序结构:代码从前往后执行,没有任何"拐弯抹角": 选择结构:也叫分支结构,重点要掌握 if else.switch 以及条件运算符: 循环结构:重复执行同一段代码. 前面讲解了顺序结构和选择结构,本节开始讲解循环结构.所谓循环(Loop),就是重复地执行同一段代码,例如要计算 1+2+3+--+99+100 的值,就要重复进行99次加法运算. while循环 while循环的一般形式为:     while(表达式){         语句块  

perl控制流介绍(if条件,while,for循环,foreach)

1. 语句块:{ }之间的部分即为BLOCK语句块. 2. 条件语句:if ( expression )  BLOCK; if ( expression )     BLOCK1else BLOCK2; if ( expression1 )     BLOCK1;elsif ( expression2 )    BLOCK2;else    BLOCK3; #倒置的if语句expression if ( test_expression ); 涉及到的关系运算符:数字值比较:==, >, <,

javascript while语句和do while语句的区别分析

while语句: 复制代码 代码如下: var i = 1;  while(i<10)  {      document.write(i);      i++;  } do while语句:  复制代码 代码如下: var i = 1;  do  {      document.write(i);      i++; }while(i<10); 从上边例子中我们来分析它们的两点不同: 1.因为while语句总是先检测循环表达式,所以它的循环体可能一次都不执行:而do/while语句是在循环底部

JavaScript三种绑定事件方式及相互之间的区别分析

本文实例讲述了JavaScript三种绑定事件方式及相互之间的区别.分享给大家供大家参考,具体如下: JavaScript三种绑定事件的方式: 1. <div id="btn" onclick="clickone()"></div> //直接在DOM里绑定事件 <script> function clickone(){ alert("hello"); } </script> 2. <div i

JavaScript整除运算函数ceil和floor的区别分析

本文实例分析了JavaScript整除运算函数ceil和floor的区别.分享给大家供大家参考.具体分析如下: Math.ceil(count / pagesize); //向上整除,如 Math.ceil(4/3)结果为2; Math.floor(count / pagesize); //向下整除,如 Math.floor(4/3)结果为1; 希望本文所述对大家的javascript程序设计有所帮助.

浅谈JavaScript变量的自动转换和语句

JS自动类型转换 var a = 1; var b = true; "==" 表示 可以自动类型转换,比较的是数值  "===" 表示可以自动类型转换,先比较数值,再比较类型 if (a == b) { alert("相等"); //打印 }else{ alert("不等"); } 三目运算 var c = 10/2 > 4 ? 5 : 3 ; alert(c); 关于for循环 for ( var i = 0; i &

js中将多个语句写成一个语句的两种方法小结

Javascript 中将多个语句写成一个语句的两种方法小结一.使用逗号运算符将多个语句写成一个语句  1.一次声明多个变量  var i=1,j=1,k=1  2.多个语句用逗号间隔  i=1,j=i+2,k=j+2  二.使用花括号将多个语句写成一个语句  if语句.while语句.do/while语句.for语句.for/in语句和function语句等语句后都只能跟随一个子语句,此时可以用{和}将多条语句围起来变成一个语句.  复制代码 代码如下: if(username==null) 

VBS教程:VBscript语句-If...Then...Else 语句

If...Then...Else 语句 根据表达式的值有条件地执行一组语句. If condition Then statements [Else elsestatements ] 或者,使用块形式的语法: If condition Then[statements][ElseIf condition-n Then[elseifstatements]] . . .[Else[elsestatements]]End If 参数condition 一个或多个下面两种类型的表达式: 数值或字符串表达式,

Swift中循环语句中的转移语句 break 和 continue

下面通过实例代码给大家介绍了Swift中循环语句中的转移语句 break 和 continue,具体代码如下所示: /** 循环语句中的转移语句 break 和 continue */ let array:Array = [3, 4, 5, 6, 7, 8, 9] for k in array { if k == 5 { print(k) break } } print("--------->") for k in array { if k == 5 { // 结束本次循环,进入

SQLSERVER收集语句运行的统计信息并进行分析

对于语句的运行,除了执行计划本身,还有一些其他因素要考虑,例如语句的编译时间.执行时间.做了多少次磁盘读等. 如果DBA能够把问题语句单独测试运行,可以在运行前打开下面这三个开关,收集语句运行的统计信息. 这些信息对分析问题很有价值. 复制代码 代码如下: SET STATISTICS TIME ON SET STATISTICS IO ON SET STATISTICS PROFILE ON SET STATISTICS TIME ON ----------------------------

浅析JavaScript中break、continue和return的区别

break function myBreak() { for(var i = 0; i < 5; i++) { if(i == 3) { break; } console.log(i); } } myBreak(); 输出: 0 1 2 break: 直接跳出 当前 的循环,从当前循环外面开始执行,忽略循环体中任何其他语句和循环条件测试.它只能跳出一层循环,如果你的循环是嵌套循环,那么你需要按照你嵌套的层次,逐步使用break来跳出. continue function myContinue()

javascript函数命名的三种方式及区别介绍

javascript函数命名的三种方式及区别介绍 第一 复制代码 代码如下: function fn(val1,val2) { alert(val1+val2); } fn(1,2); 第二 复制代码 代码如下: var fn=function() { alert(val1+val2); } fn(1,2); 第三 复制代码 代码如下: var fn=new Function("alert(val1+val2)"); fn(1,2); 上面三种方式逻辑上是等价的,但是还是有点小区别:区

JavaScript中的toString()和toLocaleString()方法的区别

偶然之间用到这两个方法 然后在数字转换成字符串的时候,并没有感觉这两个方法有什么区别,如下: var e=123 e.toString() "123" e.toLocaleString() "123" 是吧,并没有什么区别 再继续看数组转成字符串分别用这两个方法有什么区别呢,看看,代码如下 var aa=[1,2,3] aa.toLocaleString() "1,2,3" aa.toString() "1,2,3" 也并没有