在C#中循环倒计时

时间:2014-02-05 16:47:55

标签: c# if-statement while-loop

我正在尝试制作一个while循环语句。我能够让它显示1-10,但我想摆脱7号,但由于某种原因它不起作用。

if (counter != 7)在显示1-10的数字时应跳过第七,但由于某种原因,它不起作用。

int counter = 1;
while (counter <= 10)
{
    if (counter != 7)
    {
    }
    Console.WriteLine("{0}", counter);
    counter++;
}
Console.ReadLine();

2 个答案:

答案 0 :(得分:3)

if条件后的空括号不会阻止代码到达Console.WriteLine

    int counter = 1;
    while (counter <= 10)   
    {
        if (counter != 7)
        {
            Console.WriteLine("{0}", counter);
        }
        counter++;
    }
    Console.ReadLine();

你应该将写入if。每次if(条件)为真时都会执行它

如果您准备好探索一些IEnumerable方式,那么

IEnumerable<int> counters = Enumerable.Range(1, 10);
counters.Where(x => x != 7).ToList().ForEach(x => Console.WriteLine(x));

答案 1 :(得分:1)

只需将Console.WriteLine("{0}", counter);放在右括号中:

int counter = 1;
while (counter <= 10)
{
    if (counter != 7)
    {
        Console.WriteLine("{0}", counter);
    }
    counter++;
}

Console.ReadLine();