我被赋予一项任务来制作一个程序,该程序允许用户将12个月的每个月的总降雨量输入到一个双精度数组中。C++循环在第一次迭代时被卡住
程序应该计算并显示年份的总降雨量,月平均降雨量以及最高和最低量的月份。
我的教授要求我简单地修改她为我们提供的骨架。程序编译得很好,问题是在第一次迭代中它显示了第一个月,但是停在那里。
不知道我在做什么错,有什么想法?
以下是有关区域的代码。
void getMonthlyRainfalls(double rainfallsArr[], int size, int month){
cout << "Please type the rainfalls occurring in the month " << (month+1) << ": " ;
do{
if (! cin){
cin.clear();
cin.ignore(1124, '\n');
}
for (int i = 0; i < size; i++)
cin >> rainfallsArr[month];
if (!cin || rainfallsArr[month] < 0)
cout << "Please retype the rainfalls occurring in the month " << (month+1) << ": " ;
} while (!cin || rainfallsArr[month] < 0);
}
为什么你循环大小的时间来获得一个月的降雨量,并将其重复存储在覆盖前一个相同的位置?如果它不是12,我很困惑什么大小代表。也许你应该在循环中加入值,如果每月有多个降雨总数的话。 – drescherjm
这是有点问题,我似乎无法弄清楚如何解决它我知道问题是与循环,但我不能看到我出错的地方 –
我会摆脱两个循环,但我仍然不知道什么大小是。 – drescherjm