C#中For循环的一个简单问题

时间:2010-10-28 01:07:50

标签: c# for-loop

我希望它运行三次,但它实际上从未运行循环并退出。 在VB 6.0中,我可以用类似的结构来做到这一点但是如何用C#for循环实现相同的功能呢?我想要倒计时,但事实并非如此,有时我传递“1”,有时“-1”为步骤,当以“-1”传递时它不起作用

    for (int L = 3; L <= 1; L += -1)
    {
        MessageBox.Show("dfsdff");
    }

4 个答案:

答案 0 :(得分:7)

是的,因为你有第二个条款(“继续这是真的”条款)错误的方法,试试这个:

 for (int L = 3; L >= 1; L--)
    {
        MessageBox.Show("dfsdff");
    }

现在它说“从3开始”,“递减”( - ),而L大于或等于1.

答案 1 :(得分:6)

看起来L <= 1的终极条件就是让你失望的原因。

你可能想要扭转它并说出L >= 1。否则,当L初始化为3,然后终端被评估时,它将立即返回false,表示L大于1,因此终止循环。

答案 2 :(得分:3)

for循环可写为:

for(variable L = 3; as long as L satisfies condition L <= 1; increment L by -1)

你的L总是大于1,所以循环永远不会被执行。正确的方法是:

for(int L = 0; L <= 2; L++)

for(int L = 2; L >= 0; L--)

如果你想从1开始,只需相应修改。

答案 3 :(得分:-1)

试试这个:

for (int L = 3; L >= 1; L--)
    {
        MessageBox.Show("dfsdff");
    }

那应该倒数,我已经纠正了。它们是正确的,它是一个无限循环。这是另一种方法,可能会让大脑更有意义。

int L = 3
while( L > 0)
{
    MessageBox.Show("Your clever message);
    L--;
}