C# 数组正在返回所有值,而不是1(作业)

C# 数组正在返回所有值,而不是1(作业),c#,C#,简言之,我试图创建一个列表,其中用户编辑数组中的一个值,而不是所有值,问题是最后一个foreach使用用户的输入而不是用户请求的索引替换数组中的所有值:/ static void Main(string[] args) { string[] array = new string [5] { "Duhh", "Bla", "Lel", "Meow", "Lelz" }; string exit = "Q"; foreach (string

简言之,我试图创建一个列表,其中用户编辑数组中的一个值,而不是所有值,问题是最后一个foreach使用用户的输入而不是用户请求的索引替换数组中的所有值:/

static void Main(string[] args)
    {
        string[] array = new string [5] { "Duhh", "Bla", "Lel", "Meow", "Lelz" };
        string exit = "Q";

        foreach (string value in array)
        {
            Console.WriteLine("Värdena är " +value);
        }

            Console.WriteLine("Skriv in vilket värde du vill ändra (nummerordning)");
            int index = int.Parse(Console.ReadLine());
            index = index - 1;
            Console.WriteLine("Skriv in ditt nya namn");
            string newname = Console.ReadLine();
            array[index] = newname;
        foreach (string value in array)
        {
            Console.WriteLine("Dina nya namn är " +newname);
        }


            Console.ReadKey();
    }
这是你的打字错误

foreach (string value in array)
        {
            Console.WriteLine("Dina nya namn är " +value);
        }
替换

Console.WriteLine("Dina nya namn är " +newname);


您在上一个循环中使用了错误的变量: 你应该写:

foreach (string value in array)
{
    Console.WriteLine("Dina nya namn är " + value);
}
而不是:

foreach (string value in array)
{
    Console.WriteLine("Dina nya namn är " + newname);
}

Console.WriteLine(“Dina nya namnär”+newname)我应该使用什么类型来编写输出?我不明白为什么它会替换所有的变量:您必须使用您在foreach中使用的变量。您正在使用从控制台读取的新名称。即使您循环使用它,但您打印了newname,因此它是一个问题。@MertDemirsüit不会替换数组中的所有项,您只是写出用户为数组中的每个项输入的值,而不是数组中的项。
newname
不是一个坏变量
newname
相当不错。这不是正确的。
foreach (string value in array)
{
    Console.WriteLine("Dina nya namn är " + newname);
}