输入数字时C#显示数组长度

时间:2019-10-23 19:29:54

标签: c#

我想输入一个与数组长度相对应的数字,我想显示该位置的数字

Console.WriteLine("ENter the length");

int[] array1 = { 0, 6, 7, 8, 5 };

int lenght = Int32.Parse(Console.ReadLine());

for (int i = 0; i <= lenght; i++)
{
    lenght = array1.Length;
    Console.WriteLine(lenght);
    Console.ReadLine();
}

我希望2的输出为7,但我似乎无法弄清楚

2 个答案:

答案 0 :(得分:1)

array1[lenght]

lenght为2时,它将返回数字7。但是,您应该考虑用户输入无效数字的情况。另外,lenght可能更适合命名为index,因为它不代表数组的长度。根据您的描述,听起来好像您想要特定索引处的值。

答案 1 :(得分:0)

查看示例预期输出,看来您是在谈论以给定索引而不是实际长度来检索元素。

因此,如果要检索索引为2的元素(根据您的示例,该元素将为7),则:

Console.WriteLine(array1[length]);

请注意,如果只需要打印一个值,则不必遍历数组。同样在循环内部,您会执行此操作,这将覆盖您获得的用户输入,从而使输入变得多余。

lenght = array1.Length;

因此,如果您希望元素位于给定索引处,则程序将如下所示:

int[] array1 = { 0, 6, 7, 8, 5 };

Console.Write("Enter the Index: ");
int.TryParse(Console.ReadLine(), out int index);

if (index < array1.Length)
    Console.WriteLine(array1[index]);

此外,如图所示,尝试使用int.Parse()代替int.TryParse()