0
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++;
        }    
    }    
}       

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

4

2 回答 2

6

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

你的牙套似乎没有问题。如果你修复了这两个错误,它应该可以编译。

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

于 2012-07-18T15:39:37.737 回答
2

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

而且您正在为变量分配一个longint

一个变量可以容纳的最大值2,147,483,647;所以你可以把它改成 longint

long  n = 600851475143;
于 2012-07-18T15:40:32.433 回答