Visual Studio 2010 - C# 循环从 100 变为 1,而不是从 1 变为 100

本文关键字:变为 Studio 2010 循环 Visual | 更新日期: 2023-09-27 17:55:09

>我正在用 C# 创建一个程序,该程序在 -10 到 50°C 的高温下具有 100 天的天气随机值,我几乎可以工作,但我有一个问题,寒冷的日子的输出是按升序排列的,但天和它们的热量是降序的,我该如何解决这个问题? 你可能认为这是一个愚蠢的问题,但我试图改变论点在第二个循环的括号内(天和它们的热量),但我似乎找不到它的升序。如果有人可以提供帮助,请回答,这是我的代码:

Random x = new Random();
int day = 0;
int frostDaysCounter = 0;
double sum = 0;
int[] days = {5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100};
int[] array = Enumerable.Range(1, 101).ToArray();
for (int i = 1; i <= 100; i++)
{
    int dayP = day + 1;
    array[i] = x.Next(-10, 51);
    if (array[i] < 0) {
        Console.WriteLine("Day number: " + dagurP + " Temperature: " + array[i]);
        frostDays++;
    }
        day++;
}
    Console.WriteLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
    //THIS LOOP IS THE MAIN PROBLEM
    for (int a = 100; a >= 1; a--)
    {
        Console.WriteLine("Temperature day " + day + ". is: " + array[a]);
        sum += array[a];
        day--;
    }
    Console.WriteLine("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
    double average = sum / 100;
    Console.WriteLine("Sum: " + sum);
    Console.WriteLine("Average temperature: " + average.ToString("F2") + " °C");
    Console.WriteLine("Frost was in total: " + frostDagar + " days.");

我知道这听起来像是一个愚蠢的问题,答案很简单,但我只是迷路了,如果有人可以提供帮助,请用正确的循环格式回答。谢谢。

Visual Studio 2010 - C# 循环从 100 变为 1,而不是从 1 变为 100

更改for循环,从1开始,就像第一个循环一样:

for (int a = 1; a <= 100; a++)

你应该改变你的循环:

for (int i = 1; i <= 100; i++)