如何将用户的多个值存储到特定大小的数组?

2023-12-24

我正在尝试从用户那里获取值并将其存储在特定大小的数组中。我的代码看起来像

int n = int.parse(Console.ReadLine());
string[] samples = Console.ReadLine().Split(' ');
int[] scores = Array.ConvertAll(samples, Int32.Parse);

上面的代码有效,但获取后并没有停止n输入,它允许我在之后存储值n输入。我该如何让它停止获取输入n输入,我想将所有输入放在单个空格分隔的行中。例如:

9
1 2 3 4 5 6 7 8 9

我应该使用 for 循环来实现这一点吗?


我如何让它在n个输入后停止获取输入

这意味着什么?确切地?根据代码,您似乎需要将所有输入放在一行上,并用空格分隔。您可以忽略超出范围的所有输入n像这样:

string[] samples = Console.ReadLine().Split(' ').Take(n).ToArray();

如果这不是您想要的,请改进问题,以便更清楚您尝试过什么、您现在拥有的代码做什么以及您希望它做什么。

请注意,其他替代方案包括:

  • 要求用户在每一行输入一个单独的数字。在这种情况下,您可以按照中的建议进行操作一条评论 https://stackoverflow.com/questions/43622971/how-to-store-multiple-values-from-user-to-array-upto-particular-size/43623000?noredirect=1#comment74295022_43622971,然后输入数据(即调用Console.ReadLine())进入循环。例如:
string[] samples = new string[n];
for (int i = 0; i < n; i++)
{
    samples[i] = Console.ReadLine();
}
  • 一次处理一个键的用户输入,一旦用户输入了所需数量的值,就终止输入,无论空格、换行符等如何。这是一种更复杂的方法,所以我不会费心编写一个代码示例,因为目前看来没有必要。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将用户的多个值存储到特定大小的数组? 的相关文章

随机推荐