首页 > 解决方案 > 创建一个随机数组并获取索引中的值以及输入值但获取的信息错误时的索引

问题描述

由于某种原因,我的程序不会打印与值对应的正确索引和与数组对应的正确值。

private static void askNumber(int[] numbers)
{
    Console.WriteLine("Please enter a number: ");
    int number = int.Parse(Console.ReadLine());
    for(int i = 0; i < numbers.Length - 1; i++) 
    {
        if(number == numbers[i]) //if the user input is equal to the number at the index
        {
            Console.WriteLine("Your index for your number {0} is {1}", number, i);
        }
    }
}

private static void randomNumberArray(int upperLimit, int[] numbers)
{
    Random randInt = new Random(); //random function
    for (int i = 0; i < numbers.Length; i++)
    {
        numbers[i] = randInt.Next(upperLimit); //random number is chosen between 0 and upperLimit
    }
    foreach(int i in numbers)
    {
        Console.WriteLine(numbers[i]);
    }
}

private static void askIndex(int[] numbers)
{
    Console.WriteLine("Please enter an index: ");
    int index = int.Parse(Console.ReadLine());
    Console.WriteLine("The value at index {0} is {1}", index, numbers[index]); //fetches number at an index entered
}

我在这里输入的所有代码都没有输出正确的索引和数字。我还包括了数组的随机数生成器。我似乎无法找到问题,我不知道如何。

谢谢!

标签: c#

解决方案


你的问题在这里:

foreach(int i in numbers)
{
    Console.WriteLine(numbers[i]);
}

假设您要打印一组生成的数字:

foreach(int i in numbers)
{
    Console.WriteLine(i);
}

推荐阅读