0

我想结束 100frostDays 但我想我错了。

它只是一个 for 循环 + 数组代码。

for (int i = 0; i < 100; i++)
{

  System.Random RandNum = new System.Random();
  int nyrHiti = RandNum.Next(-10, 50);
  Console.WriteLine(nyrHiti);
  int[] frostDays = new int[100];

}

Console.ReadLine();                    

Console.WriteLine(frostDays[0]);
Console.ReadLine();
4

4 回答 4

6

我不知道你在做什么,但你的代码有几个我们可以轻松修复的常见错误:

System.Random RandNum = new System.Random();
int[] frostDays = new int[100];
for (int i = 0; i < 100; i++) {
    int nyrHiti = RandNum.Next(-10, 50);
    Console.WriteLine(nyrHiti);
    frostDays[i] = nyrHiti;
}
Console.ReadLine();

Console.WriteLine(frostDays[0]);
Console.ReadLine();

这可能会让你接近你的意图。您需要Random在循环之外声明您的实例,并且frostDaysfor之后需要时它仍然在范围内,并且您需要frostDays[i]在循环中分配,否则它只是长度为 100 的零数组。

于 2012-04-10T13:00:29.500 回答
2

这将不起作用,因为frostDays您的for-loop. 必须在循环之外声明它才能被Console.WriteLine(...). 但是,它将充满 0,所以我不确定你打算在这里做什么。

于 2012-04-10T12:59:11.693 回答
1

您的数组在循环内声明,其可见性仅限于此循环。在循环之外声明它,它将起作用。

int[] frostDays = new int[100];

for (int i = 0; i < 100; i++)
{    
    System.Random RandNum = new System.Random();
    int nyrHiti = RandNum.Next(-10, 50);
    Console.WriteLine(nyrHiti);
}
Console.ReadLine();

Console.WriteLine(frostDays[0]);
Console.ReadLine();

但是,由于您不对其进行任何操作,因此每次都会返回 0。也许您想要的是将i选项卡的第 th 值设置为您刚刚选择的随机数?在这种情况下,frostDays[i] = nyrHiti请在循环体的末尾使用。

于 2012-04-10T12:59:51.897 回答
0

您必须在循环外定义frostDays。

于 2012-04-10T13:00:17.033 回答