很快,如何在打印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();
}
我试着写&#34;休息&#34;在&#34; Console.WriteLine(i)之后;&#34;但是它只打印了一个数字,我需要20个。
由于
答案 0 :(得分:3)
您需要跟踪已打印出的数量,然后在足够数量后突破循环:
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;
}
}
或者您可以在两个条件下使用for
循环:
for (int i = 200, j= 0; i < 2000 && j < 20; i++)
{
if ((i % num1 == 0) && (i % num2 ==0))
{
Console.WriteLine(i);
j++;
}
}
答案 1 :(得分:0)
for (int i = 200,loopCounter=0; i < 2000; i++)
{
if ((i % num1 == 0) && (i % num2 ==0))
{
if(loopCounter == 20)
break;
Console.WriteLine(i);
loopCounter++;
}
}
答案 2 :(得分:0)
每当程序控制到达break
时,它将退出运行它的循环
为了确保循环突破正确的点,您需要检查要从循环中断的条件。
static void Main(string[] args)
{
int num1 = 4;
int num2 = 7;
int counter=0
for (int i = 200; i < 2000; i++)
{
if(counter>20)
break;
if ((i % num1 == 0) && (i % num2 ==0))
{
counter++;
Console.WriteLine(i);
}
}
Console.Read();
}