C# C中的简单for循环#
我正在尝试使用Visual C#Express解决这个问题 我创建了一个控制台应用程序,并编写了以下代码:C# C中的简单for循环#,c#,C#,我正在尝试使用Visual C#Express解决这个问题 我创建了一个控制台应用程序,并编写了以下代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Euler_1 { class Program { static void Main(string[] args) { int
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Euler_1
{
class Program
{
static void Main(string[] args)
{
int num = 0;
int sum = 0;
for (int i = 0; i <= 10; i++)
{
if (num / 3 == 0)
sum = sum + num;
num++;
System.Console.WriteLine(num);
}
}
}
}
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用系统文本;
名称空间Euler_1
{
班级计划
{
静态void Main(字符串[]参数)
{
int num=0;
整数和=0;
对于(int i=0;i您可以使用Console.ReadKey()
来修复它。通常,在出现这种情况的控制台应用程序中(尽管如果您可以帮助的话,我从不推荐使用它…控制台往往从现有的命令行运行,完成后会立即退出,返回到终端的上下文),您会看到这样的情况:
Console.WriteLine("press any key to exit...");
Console.ReadKey();
您可以使用Console.ReadKey()
来修复它。通常,在出现这种情况的控制台应用程序中(尽管如果您可以帮助的话,我不建议使用它……控制台通常从现有的命令行运行,完成后会立即退出,返回到终端上下文),您会看到类似这样的情况:
Console.WriteLine("press any key to exit...");
Console.ReadKey();
试一试
在循环之后尝试
循环结束后,您可以在最后一行设置断点,以便调试器停止;添加像ReadLine这样的调用,以便需要用户输入;添加延迟(睡眠)使Windows保持显示几秒钟或从命令提示符运行它。您可以在最后一行设置断点,使调试器停止,添加类似ReadLine的调用,以便需要用户输入,或添加延迟(睡眠)使窗口保持显示几秒钟或在命令提示符下运行。操作太多
if (i / 3 == 0)
sum+=i;
正如其他人所说
Console.ReadKey()
将让您查看结果。操作太多
if (i / 3 == 0)
sum+=i;
正如其他人所说
Console.ReadKey()
将让您查看结果。您也可以尝试使用ReadLine方法
Console.ReadLine();
链接:您也可以尝试使用ReadLine方法
Console.ReadLine();
链接:问题在于,在循环完成后,应用程序终止(控制台关闭)。要保持控制台打开,可以执行以下操作之一:
如果在不使用调试器的情况下通过按ctrl+F5而不是只按F5来启动应用程序,则在程序退出之前会看到一个按任意键继续…
对我来说,使用调试器执行此操作的最佳方法是在main
方法的右括号中添加一个断点(F9)
添加额外代码以帮助您调试程序对我来说是一个坏习惯。问题是,在循环完成后,应用程序终止(控制台关闭)。要保持控制台打开,可以执行以下操作之一:
如果在不使用调试器的情况下通过按ctrl+F5而不是只按F5来启动应用程序,则在程序退出之前会看到一个按任意键继续…
对我来说,使用调试器执行此操作的最佳方法是在main
方法的右括号中添加一个断点(F9)
添加额外的代码来帮助您调试程序对我来说是一个坏习惯。Ctrl+F5将留给您一个按任意键继续…
这将阻止控制台自动关闭
或者,您可以转到工具栏中的Debug
,然后单击Start Without Debug
此解决方案将阻止向项目中添加代码。Ctrl+F5将留给您一个按任意键继续…
这将阻止控制台自动关闭
或者,您可以转到工具栏中的Debug
,然后单击Start Without Debug
此解决方案将阻止向项目中添加代码。这里是包含其他人提到的所有更改的干净代码。主要是modulo(请参阅%)和Console.ReadKey
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Euler
{
class Program
{
static void Main(string[] args)
{
const int max = 10;
int sum = 0;
for (int i = 0; i < max; i++)
{
if (i % 3 == 0 || i % 5 == 0)
sum += i;
}
Console.WriteLine("The sum of all multiples of 3 and 5 from 0 to {0} is: {1}", max, sum);
Console.WriteLine("Press any key to exit.");
Console.ReadKey();
}
}
}
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用系统文本;
名称空间Euler
{
班级计划
{
静态void Main(字符串[]参数)
{
常数int max=10;
整数和=0;
对于(int i=0;i
这里是包含其他人提到的所有更改的干净代码。主要是模(见%)和Console.ReadKey
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Euler
{
class Program
{
static void Main(string[] args)
{
const int max = 10;
int sum = 0;
for (int i = 0; i < max; i++)
{
if (i % 3 == 0 || i % 5 == 0)
sum += i;
}
Console.WriteLine("The sum of all multiples of 3 and 5 from 0 to {0} is: {1}", max, sum);
Console.WriteLine("Press any key to exit.");
Console.ReadKey();
}
}
}
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用系统文本;
名称空间Euler
{
班级计划
{
静态void Main(字符串[]参数)
{
常数int max=10;
整数和=0;
对于(int i=0;i
您可能想使用i
而不是num
。顺便说一句,如果您想要循环的N次迭代,请使用for(int i=0;i(num/3==0)
与num==0
相同的事情?也许你的意思是(num%3==0)
@MikeChristensen我强烈怀疑你是对的。你的意思可能是使用I
而不是num
。顺便说一句,如果你想要循环的N次迭代,请使用(int I=0;Inum==0
不一样吗