首页 > 解决方案 > 如何修复从文件中读取并使用while循环存储在数组中的错误值?

问题描述

我正在尝试遍历包含数字 3.8、2.1、2.9、3.1、2.0、1.6、3.5、2.3、2.1、3.7 和 3.2 的文件,并将它们存储在一个数组中。然后我必须将这些数字相加并取其平均值。我必须使用一个循环直到文件末尾的while循环,但它在数组中存储了错误的值。

我曾尝试更改 while 循环中的顺序语句,但它不会做任何事情。我也更改了文件,但没有帮助。我相信它在while循环中搞砸了。


 subscript = 0;
 double gpasummer[subscript];
 fin >> gpa;

 while (!fin.eof())
 {
          gpasummer[subscript] = gpa;
          fin >> gpa;
          subscript = subscript +1;

 }

它应该以相同的顺序输出文件中的数字,然后输出平均值,但它只显示 3.8、2.3、2.3、3.7、3.2 和 0.0(甚至在文件中都没有),这使得平均值错误。

标签: c++

解决方案


推荐阅读