For Loop Constructs

时间:2012-05-07 02:39:57

标签: c# c++

这个循环会完全执行N次吗?

for (int i = 0; i < N; i++) 
{
    //statement
    someMethodCall();
}

此循环最多会执行N次吗?

for (int i = 1; i < N; i++)  
{
    someMethodCall();
}

此循环至少会执行N次吗?

for (int i = 0; i <= N; i++) 
{
    //statement
    someMethodCall();
}

如果我需要在mn次之间执行声明,我该怎么办,例如调用方法?

3 个答案:

答案 0 :(得分:2)

你的三个问题的答案是肯定的,不是,是的,我想,虽然第三个答案有点欺骗性;它会执行N次,不多也不少(除非有异常终止循环异常。)你可以写一个for循环来循环一定次数,或者直到某些条件变为真,然后你有能够使用breakreturn提前终止循环。

但是没有执行“至少N次”的概念;它根本不是这个或任何其他计算机语言的一部分。

答案 1 :(得分:0)

循环公式可以计算为

Math.Round (condition - initialization )/increment

在第一种情况下

(N-0)/1 which evaluates to N times

在第二种情况下

(N-1)/1 which evaluates to N-1 times

在第三种情况下

(N-0+1)/1 which evaluates to N+1 times

How would I do if I need to execute statement between m and n times? For instance I want to call one method between m and n times?

然后检查条件

for (int i = m; i < n; i++)
{
    someMethodCall();
}

答案 2 :(得分:0)

在for循环中,您可以拥有这些代码,

N时间

for (int i = 0; i < N; i++) {

}

N + 1时间

for (int i = 0; i <= N; i++) {

}

如果没有任何时间你想要自己处理它,你可以使用它,

for (;;) {
   //do something and don't forget use break or return !         
}

OR

while(x>10){    

}
正如欧内斯特弗里德曼希尔所说,

和循环循环很好。

for (int i = 0; i <=10; i++) {
    for (int i = 0; i < length; i++) {

    }
}

使用2xTab进行视觉工作室帮助。