频道栏目
读书频道 > web开发 > .NET > Visual C++ .NET程序设计教程(第2版)
2.4.4 for循环
2012-11-26 13:16:50     我来说两句
收藏   我要投稿
本书以Visual C++ .NET为平台介绍程序设计方法。第一部分为教程,首先介绍Visual C++ .NET开发环境,然后介绍C++/CLI语言基础和C++/CLI面向对象编程基础,在这个基础上系统介绍Visual C++ .NET应用程序设计...  立即去当当网订购

for循环语句具有下列格式:
for ([e1];[e2];[e3])
   <s>

其中for是C++/CLI的关键字,循环体s可以是一条语句,也可以是块语句。一般情况下,表达式e1用作循环变量的初始化,表达式e2用作循环体s的循环条件,当等于true时,开始执行循环体s,然后计算表达式e3,再判断表达式e2的值是否为true,若是,再执行循环体s,再计算表达式e3,如此反复,直到表达式e2等于false为止。循环结束后,执行循环结构后面的语句。例如,上述示例用for循环语句来改写。

【例Ex_For】使用for循环
#include "stdafx.h"
using namespace System;
int main(array<System::String ^> ^args)
{
 int nTotal = 0;
 for (int nNum=1; nNum<=50; nNum++)
 {
  nTotal += nNum;
 }
 Console::WriteLine(L"The sum, from 1 to 50, is: {0}", nTotal.ToString());
 return 0;
}

编译运行,结果如下:
The sum, from 1 to 50, is: 1275

需要说明的是:

(1)循环体s中的语句也可是一条空语句,这样的循环往往用于时间延时。例如:

for ( int i=0; i<10000; i++) ;  // 注意后面的分号表示一条空语句

(2)表达式e1、e2、e3都可以省略,但分号“;”不能省略。若省略表达式e1,不影响循环体的正确执行,但循环体中所需要的一些变量及其相关的数值要在for语句之前定义。若省略表达式e2,则表达式e2的值被认为是“真”(true), 循环无终止地进行下去,应在循环体中使用break语句。若省略表达式e3,应在设计循环结构时保证表达式e2的值有等于0的可能,以便能终止循环。例如下面的几种方式,其作用和结果都是一样的:
方式1:  int nNum=1;
  for ( ; nNum<=50 ; nNum++)
  {
    nTotal += nNum;
  }
方式2:  int nNum=1;
  for ( ; nNum<=50 ; )
  {
    nTotal += nNum;
   nNum++;
  }
方式3:  int nNum=1;
  for ( ; ; )
  {
   nTotal += nNum; 
   nNum++;
   if (nNum>50) break;
  }

(3)表达式e1和表达e3可以是一个简单的表达式,也可以是逗号表达式,即包含两个或两个以上的简单表达式,中间用逗号分隔。例如:
for (nNum=1,nTotal=0 ; nNum<=50 ; nNum++) 
 nTotal += nNum;

(4)由于循环体是由任何类型的语句组成的,因此在循环体内还可以包含前面的几种循环语句,这样就形成了循环的嵌套。例如:
for (... ; ... ; ...){ while (...) {
 while (...)  for (... ; ... ; ...)
 {  {
 }  }
}  }

您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:2.4.3 while和do-while循环
下一篇:2.4.5 for each循环
相关文章
图文推荐
排行
热门
最新书评
特别推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站