用户更改数组中的值

时间:2014-03-05 16:46:43

标签: c# .net arrays methods

我是C#的新手,我在最后一小时试图找到如何提供的教程 用户更改数组中任何元素的值的方法,它需要确保索引有效。你能帮助我或提供我的信息,以便我可以学习它。我似乎无法找到它至少没有什么简单,因为我还是新编程。

下面提供的代码示例,我将与之合作。

澄清:用户输入值使用他们选择的索引值之一将其切换出来。

 int[] A = { -2, 5, -1, 9, -6, 23, 67, 1, -8, 7, -3, 90 };//<<< values
 ChangedArray(A);

 //Method down here returning value on top to display array
 static void ChangeArray(int[] array)
    {
        Console.WriteLine("\n=============\n");
        for (int i = 0; i < array.Length; i++)
        {
            Console.Write("{0}", array[i]);
        }
        Console.WriteLine("\n=============\n");
    }

3 个答案:

答案 0 :(得分:2)

这假设有效的用户输入。

您可以索引数组,然后只需指定值

 static void ChangeArray(int[] array)
{
    int index = Convert.ToInt32(Console.ReadLine());
    int newValue= Convert.ToInt32(Console.ReadLine());

    if(index <= array.Length && index >= 0)
    {
        array[index] = newValue;
    }
    Console.WriteLine("\n=============\n");
    for (int i = 0; i < array.Length; i++)
    {
        Console.Write("{0}", array[i]);
    }
    Console.WriteLine("\n=============\n");
}

答案 1 :(得分:2)

类似的东西:

public void Main(...)
{
    Try 
    {
        int[] myArray = { -2, 5, -1, 9, -6, 23, 67, 1, -8, 7, -3, 90 };
        int index = Convert.ToInt32(Console.ReadLine())
        int newValue = Convert.ToInt32(Console.ReadLine())
        ChangeArray(myArray,index, newValue);
    }
    Catch (Exception e)
    {
        Console.WriteLine(e.Message);
    }
}

static void ChangeArray(int[] array, int index, int newValue )
    {
        if (array.Length >= index || index < 0)
        {
            Console.WriteLine("\n=====No change========\n");
            return;
        }

        Console.WriteLine("\n=====Old values========\n");
        for (int i = 0; i < array.Length; i++)
            Console.Write("{0}", array[i]);

        array[index] = newValue;

        Console.WriteLine("\n\n======New values=======\n");
        for (int i = 0; i < array.Length; i++)
            Console.Write("{0}", array[i]);
    }

答案 2 :(得分:0)

这假定控制台的有效输入和范围内的int[] A。我假设你想要它,因为你使用的是Console方法。

  Console.Write("Index to edit:"); 
  int indexToChange = Convert.ToInt32(Console.ReadLine());
  Console.Write("To value:"); 
  int valueToSave = Convert.ToInt32(Console.ReadLine()); 
  A[indexToChange] = valueToSave;