调用显示数组内容的方法

时间:2012-07-03 15:43:19

标签: c# arrays

我对将什么作为“output();”

的参数感到困惑

我需要让它显示已经创建的数组的内容,但我感到困惑的是它的数组而不仅仅是变量......我认为它应该是输出(值);但是你可能会说的那些以及许多其他猜测都没有奏效。

我被告知你在那里放入了你在main中创建的变量,但这些变量不起作用。

using System;


namespace Lab16
{
class Program
{
    static void Main(string[] args)
    {

        int value;

        Console.Write("How big of an Array? ");
        int arraySize = int.Parse(Console.ReadLine());
        int[] arr = new int[arraySize];

        for (int i = 0; i <= arraySize - 1; i++)
        {
            Console.Write("First Value: ");
            value = int.Parse(Console.ReadLine());
            arr[i] = Convert.ToInt32(value);
        }

        output();
    }

    static void output(ref int value, ref Array arr, ref int arraySize)
    {

        foreach (int i in arr)
        {
            for (int v = 1; v <= arraySize; v++)
            {
                string number = "Number: ";

                Console.WriteLine("{0}{1} {2}", number, v, i);
                Console.ReadLine();
            }
        }
    }
}
}

4 个答案:

答案 0 :(得分:2)

首先,为什么所有参考?它们似乎没有任何用途,以及从未使用过的第一个参数:

static void output(Array arr, int arraySize)
    {

        foreach (int i in arr)
        {
            for (int v = 1; v <= arraySize; v++)
            {
                string number = "Number: ";

                Console.WriteLine("{0}{1} {2}", number, v, i);
                Console.ReadLine();
            }
        }
    }

现在使用

output(arr, arraySize);

第二个参数也可以被剥离,因为C#数组在字段中保存它们的长度:

static void output(Array arr)
    {

        foreach (int i in arr)
        {
            for (int v = 1; v <= arr.Length; v++)
            {
                string number = "Number: ";

                Console.WriteLine("{0}{1} {2}", number, v, i);
                Console.ReadLine();
            }
        }
    }

并使用:

 output(arr);

答案 1 :(得分:2)

您应该将数组作为参数发送到此方法:

static void output(int[] arr)
{
    for (int i = 0; i< arr.Length; i++)
    {

        string number = "Number: ";
        Console.WriteLine("{0}{1} ", number, arr[i]);
        Console.ReadLine();
    }
}

答案 2 :(得分:2)

使用此:

 static void output(int[] myArray)
 {
    for (int i = 0; i< myArray.Length; i++)
   {

    string number = "Number: ";
    Console.WriteLine("{0}{1} {2}", number, v, i);
    Console.ReadLine();
   }
 }

但是在调用函数时不要忘记传递参数:

output(myArray)

因为输出期望接收数组。放下所有参考文献。

myArray.Length已经存储了数组的大小。

答案 3 :(得分:0)

我不确定value参数是什么,但是arr将是你的数组,arr,而arraySize是你的变量arraySize。输出(value,arr,arraySize)

也是如此