我需要建议我做错了什么

时间:2012-01-07 16:41:41

标签: c# arrays methods

我需要小任务的帮助

static int Max(int[] p)
    {
        int max = p[0];
        for (int i = 1; i < p.GetLength(0); i++)
        {
            if (p[i] > max) max = p[i];
        }
        return max;
    }
    static void Main(string[] args)
    {
        int[] p = new int[10];
        for (int i = 0; i < p.GetLength(0); i++)
        {
            Console.Write("Vpiši {0}. celo število: ", i);
            p[i] = int.Parse(Console.ReadLine());
        }
        int max = Max();
        Console.WriteLine(max);
        Console.ReadKey(true);
    }

我不知道原因,但我有正在为Max方法写出max数组的问题。我认为我不是在核心地调用这个方法 - 我能不能得到帮助或问题

2 个答案:

答案 0 :(得分:3)

您没有正确调用Max方法(我认为这段代码甚至不会编译)。确保传递数组的方法(p):

int max = Max(p);

答案 1 :(得分:0)

将它们放在一个类中,然后将p作为参数传递

例如

public class checkmax
    {

        static int Max(int[] p)
        {
            int max = p[0];
            for (int i = 1; i < p.GetLength(0); i++)
            {
                if (p[i] > max) max = p[i];
            }
            return max;
        }


        static void Main(string[] args)
        {
            int[] p = new int[10];
            for (int i = 0; i < p.GetLength(0); i++)
            {
                Console.Write("Vpiši {0}. celo število: ", i);
                p[i] = int.Parse(Console.ReadLine());
            }
            int max = Max(p);
            Console.WriteLine(max);
            Console.ReadKey(true);
        }
    }
}