【问题标题】:C# How to draw values onto a 2D array with a user inputC#如何使用用户输入将值绘制到二维数组上
【发布时间】:2016-12-14 19:58:58
【问题描述】:

好的,我有一个

        string[,] grid = new string[3, 3] {{" "," "," "},
                                           {" "," "," "},
                                           {" "," "," "}};

我有一个代码让用户以这种形式(x,y(例如 2,2))输入 x 和 y 的坐标,我似乎遇到的问题是如何实际绘制实际数组中的符号/字符,我将如何处理它,在 Main 中?

【问题讨论】:

  • how to actually draw a symbol/char in the actual array ???
  • 就像我希望编译器通过提供坐标 2,2 来将 X 绘制到其中一个空格中,并且编译器用 X 而不是空格替换该框
  • @Chaus 您是否需要帮助了解如何将符号写入该坐标,或者需要帮助了解如何显示您的网格?
  • @Chaus 你还需要帮助还是你解决了?
  • compiler replacing that box with an X instead of a blank space 好像你需要阅读一些关于 c#、编译器等的文档.....

标签: c# arrays multidimensional-array console-application


【解决方案1】:

为了这个例子,假设您想在网格的右下角输入符号 $。你这样做:

grid[2,2] = "$";

所以现在如果你打印它,你的数组将如下所示:

{{" "," "," "},
 {" "," "," "},
 {" "," ","$"}};

不要忘记数组是基于 0 的,因此在您的情况下没有 3 个插槽,只有 0、1 和 2。

如果您想知道如何将该网格输出到控制台,请尝试:

    int rowLength = grid.GetLength(0);
    int colLength = grid.GetLength(1);

    for (int i = 0; i < rowLength; i++)
    {
        for (int j = 0; j < colLength; j++)
        {
            Console.Write(string.Format("{0} ", grid[i, j]));
        }
        Console.Write(Environment.NewLine + Environment.NewLine);
    }

编辑:您询问如何获取用户的输入,然后将符号放置在他们指定的位置:

Console.WriteLine("Please enter the x-Coordinate");
int x = Console.ReadLine();
Console.WriteLine("Please enter the y-Coordinate");
int y = Console.ReadLine();

grid[x,y] = "$";

//then redraw the grid if you desire using the code above

【讨论】:

  • 那么,我将如何定制此代码以使用输出 XCoordinate 和 YCoordinate 值的子例程,然后使用这两个将该符号实际输出到指定位置?所以我有一个子程序提示用户输入值,例如 2,2,我将如何在该代码中使用这些值?
  • 好的,那么你想将用户的输入存储到一个变量中,我会在我的答案中告诉你,我会添加一个编辑
  • 非常感谢 :)
  • 这就是您要找的东西吗? @Chaus
  • 是的,我的代码没有任何语法,但它似乎对代码没有预期的效果,也许你会知道有什么问题imgur.com/a/pEzZ6
【解决方案2】:

这是你需要的吗?

for (int i = 0; i < grid.GetLength(0); i++)
{
    for (int j = 0; j < grid.GetLength(1); j++) Console.Write(grid[i, j]);
    Console.WriteLine()
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-14
    相关资源
    最近更新 更多