无法让 for 循环工作

Can't get the for loops working

本文关键字:循环 工作 for      更新时间:2023-10-16

第一个循环为我提供了正确的答案,最低的答案为0.00。
但是,当我将第二个循环添加到0.00降雨时跟踪数月的数量时,第一个循环说" NAN",而第二个循环给出了正确的答案。

#include <iostream>
using namespace std;
int main(){
    const int NUM = 12;
    string month[NUM] =  {"JAN","FEB","MAR","APR","MAY","JUNE","JULY","AUG","SEPT","OCT","NOV","DEC"};
    int counter = 0;
    float lowest;
    float rainfall [NUM] = {20.75, 34.60, 0.00, 4.12, 1.00, 72.99, 3.76, 10.00,     8.09, 64.05, 0.00, 30.02};
    for (int i = 0; i < NUM; i++) {
        if ((rainfall[i] < rainfall [i-1]) && (rainfall[i] < lowest))
           lowest = rainfall[i];
    }
    cout << lowest << endl;
    for (int i = 0; i < NUM; i++)
    {
        if (rainfall[i] == 0.00)
        counter += 1;
    }
    cout << counter;
    return 0;
}

初始lowest

float lowest=100.00;  //or any other term, like INT_MAX

没有初始化,您不知道 lowest可能成立什么,因此在进一步的计算中会产生错误的值。