这个c#语法有什么问题?

时间:2012-07-18 15:37:58

标签: c#

using System;
public class Test
{
    public static void Main()
    {
        int n = 600851475143;
        int x = 1;
        While (x<n)
        {
        if(n%x==0)
            {
                Console.WriteLine(x);
            }    
        x++;
        }    
    }    
}       

给我一​​个{不合适的错误,但我看不出什么是错的。任何人?

2 个答案:

答案 0 :(得分:6)

While不应大写,n的值对于int来说太大了。

你似乎没有大括号的问题。如果你修复了这两个错误,它应该编译。

编辑:您发布的代码文件与您在问题中发布的代码文件完全不同。 C#程序只能有一个入口点,这是public static void Main()所做的。如果从Program文件复制并粘贴方法签名,则不会编译。将Main更改为任何其他有效签名,它应该编译。

答案 1 :(得分:2)

While (x<n)应为while (x<n)

您要为long变量指定int值。

maximum valueint varibale可以容纳 2,147,483,647 ;所以你可以把它改成长

long  n = 600851475143;