无法在C#的控制台中打印数组

时间:2018-07-29 13:41:05

标签: c# arrays

我正在尝试编写一个简单的程序,显示5到1000的倍数。但是执行时控制台为空。我不清楚为什么会这样。我还是一个初学者,所以请原谅这个愚蠢的问题。谢谢!

int[] nums = new int[] { };

for (int i=1; i < nums.Length; i++)
{
    //Checks if number is divisible by 5
    if (i%5 == 0)
    {
        //Creates Array input in right index
        int tst = i / 5 - 1;

        //Writes i to array
        nums[tst] = i;
    }
}

Console.WriteLine(String.Join("; ", nums));

2 个答案:

答案 0 :(得分:1)

您的s/\(^\n\|\n$\)//数组的长度为零。您为此得到的错误。对于您的示例,您必须创建最小长度为200的数组;

nums

答案 1 :(得分:0)

数组初始化后具有固定的长度,在这种情况下,您要创建的数组的长度为零(例如,空)。

如果需要动态添加,最好创建一个 List ,然后在需要使用它时,将其转换为数组,如下所示:

List<int> nums = new List<int>();
int countTarget = 1000;

for (int i = 1; i < countTarget; i++)
{
    //Checks if number is divisible by 5
    if (i % 5 == 0)
    {
        //Writes i to list
        nums.Add(i);
    }
}

Console.WriteLine(String.Join("; ", nums.ToArray()));