C# C中的简单for循环#

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

我正在尝试使用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 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不一样吗