我正在尝试从用户获取值并将其存储在特定大小的数组中。我的代码看起来像
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循环来实现这个目标吗?
答案 0 :(得分:3)
如何在n次输入后停止输入
意思是什么?究竟?根据代码,您似乎需要在一行上的所有输入,以空格分隔。您可以忽略n
之外的所有输入,如下所示:
string[] samples = Console.ReadLine().Split(' ').Take(n).ToArray();
如果这不是您想要的,请改进问题,以便更准确地了解您所尝试的内容,您现在所拥有的代码以及您希望它的内容改为做。
请注意,其他替代方案包括:
Console.ReadLine()
的调用)放入循环中。例如:string[] samples = new string[n];
for (int i = 0; i < n; i++)
{
samples[i] = Console.ReadLine();
}