【发布时间】:2014-01-29 13:08:21
【问题描述】:
我正在尝试计算某些值的总和和平均值,例如:
值列表: 1.0 2.0 3.0 4.0
然后,在我输入我的哨兵值 -1.0 后,它会计算出平均值,即 2.5。但是,我最终得到一个长负数(-9255963134931 ...)。我是数组新手,对如何获得所需的输出感到困惑。任何帮助表示赞赏。 (如何使用 if else 语句找到中间值?)
#include <iostream>
#include<iomanip>
using namespace std;
int main()
{
int i, count=0;
double scores [10];
double value;
double sum=0.0;
cout << "Author: J. Soto\n";
cout << fixed << showpoint << setprecision(1);
cout<<"Input -1.0 when you are ready to stop."<<endl;
cout<<"Input a value: ";
cin>>value;
while(value!= -1.0 && count<10) {
scores [count] = value;
count = count + 1;
cout<<"Input a value: ";
cin>> value;
}
cout<<"\nYou entered "<<count<<" values"<<endl;
for(i=0; i<count; i++) {
cout << setw(6) << scores[i];
sum= value+scores[count];
cout << "\n\nThe average of the values is:" << sum << endl;
}
return 0;
}
【问题讨论】:
-
你应该习惯在第一次使用之前就声明变量,并将它们保持在最内部的范围内。
标签: c++ arrays for-loop sum average