您好我已经在这个程序上工作了一段时间,似乎无法使用批处理获得数据文件中只有负整数的平均值的正确答案。 这是我到目前为止所拥有的
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int data;// the data which will be inputted from the file
int count = 0;// # of integers in data file
int amount = 0; // number of data integers in a column
int negatives = 0; // number of negative integers in file
double average = 0; // average of negative numbers in file
int sum= 0; // sum of negative values in file
double value; // value of negative numbers in file
cin >> data;
cout << "Values read from file" << endl;
while (cin >> data)
count++;
amount++;
cout << setw(10) << data;
if ((amount % 5) == 0)
{
cout << endl;
}
if ( data < 0)
{
negatives++;
value = data;
average = value/ negatives;
}
else
if (data > 0)
{
cout << "There was no negative #s" << endl;
}
} if (amount)
{
cout << endl;
}
cout << "# of values read: " << count << endl;
cout << "Average of negative #s:" << average << endl;
return 0;
}
所以程序的重点是以5列显示输入文件中的数据,然后显示文件中的整数数,然后取出文件中负数的平均值。如果文件中没有负数,程序必须显示一条消息,说明没有负数。就整数计数的输出和5列的显示而言,一切看起来都很好但是我输入了文件中负数平均值的代码,它完全搞砸了输出。