C# 如何在循环中 X 次后中断?

nir*_*989 -1 c# loops break

很快,我如何在打印 20 个数字后停止以下代码?

谢谢

    static void Main(string[] args)
    {
        int num1 = 4;
        int num2 = 7;

        for (int i = 200; i < 2000; i++)
        {
            if ((i % num1 == 0) && (i % num2 ==0))
            {
                Console.WriteLine(i);
            }
        }
        Console.Read();
    }
Run Code Online (Sandbox Code Playgroud)

我尝试在“Console.WriteLine(i);”之后写“break” 但后来它只打印了 1 个数字,而我需要 20 个。

谢谢

Sel*_*enç 5

您需要跟踪已打印出的数字数量,然后在有足够的数字后跳出循环:

int counter = 0;
for (int i = 200; i < 2000; i++)
{
     if ((i % num1 == 0) && (i % num2 ==0))
     {
         Console.WriteLine(i);
         counter++;
         if(counter == 20)
             break;
     }
}
Run Code Online (Sandbox Code Playgroud)

或者您可以使用for具有两个条件的循环:

for (int i = 200, j= 0; i < 2000 && j < 20; i++)
{
    if ((i % num1 == 0) && (i % num2 ==0))
    {
        Console.WriteLine(i);
        j++;
    }

}
Run Code Online (Sandbox Code Playgroud)