【问题标题】:Is it possible in c# to take input for input values in Jagged Arrays是否可以在 c# 中为 Jagged Arrays 中的输入值输入输入
【发布时间】:2021-10-06 05:26:30
【问题描述】:
 int[][] randomNumber = new int[3][];
        randomNumber[0] = new int[2];
        randomNumber[1] = new int[2];
        randomNumber[2] = new int[2];
        Console.WriteLine(randomNumber.Length);

        for(int i= 0; i<randomNumber.Length;i++)
        {
            Console.WriteLine("Enter two people name");
            for(int j =0; j<randomNumber[i].Length; j++)
            {
                randomNumber[i][j] = Convert.ToInt32(Console.ReadLine());
            }
        }

        for(int i=0; i<randomNumber.Length;i++)
        {
            for(int j = 0; j<randomNumber[i].Length;j++)
            {
                Console.Write("{0} ",randomNumber[i][j]);
            }
            Console.WriteLine();
        }

在上述问题中,我希望用户输入锯齿状数组的输入(即,有什么方法可以让我决定要添加多少个数组以及该数组内的元素数可以是仅由用户决定?)

【问题讨论】:

  • 不清楚您的意思-您的意思是希望用户在一行中输入两个名称?不,没有从单个字符串输入数组的内置方法。您可以让它们用逗号或其他分隔符分隔,Split 然后放入一个数组中。那将是更容易的路线。
  • 我认为您不会很幸运地向用户询问两个人的姓名,然后将他们的输入解析为 int.. 甚至 Bord 名称都不符合该规范
  • Console.WriteLine("Enter two names separated by a space"); randomString[0] = Console.ReadLine().Split()
  • 哦,当然..这是可行的..
  • 要不要先求几个名字,然后收集那么多名字?或者收集姓名,直到用户说“停止”。可以使用List&lt;String&gt;,或者动态增加数组大小等

标签: c# visual-studio jagged-arrays


【解决方案1】:

作为初学者:

int[][] x;

Console.WriteLine("How many times should I ask for numbers?");
int y = int.Parse(Console.ReadLine());

x = new int[y][];

for(int i = 0; i<y; i++)){

  Console.WriteLine("How many numbers will you enter this time?");
  int z = int.Parse(Console.ReadLine());

  x[i] = new int[z];

  for(int j = 0; j<z; j++){
    Console.WriteLine("What is the "+j+"+th number?");
    x[i][j] = int.Parse(Console.ReadLine());
  }
}

或者你可以跳过第二个问题/循环,直接问:

for(int i = 0; i<y; i++)){

  Console.WriteLine("Enter numbers separated by spaces?");
  x[i] = Console.ReadLine().Split().Select(int.Parse).ToArray();
}

但不要交出后者,除非 a) 你已经学习了 LINQ 或 b) 你准备好研究它的工作原理并解释它:D

【讨论】:

  • 更改已实施。我还纠正了[z] 中的相同错误
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-07
  • 2015-07-27
  • 1970-01-01
  • 2011-01-07
相关资源
最近更新 更多