2014-07-13 65 views
0

我对编程非常陌生,我似乎碰到了一堵墙。我试图写一个简单的代码,读取不同Bowlers的分数,然后找到每个Bowler的平均值。我的代码似乎读取了分数的第一行然后停止。有什么建议?下面是我有从文本文件中读取数据,然后获取平均值

#include <iostream> 
    #include <fstream> 
    #include <iomanip> 
    #include <string> 
    #include <sstream> 
    #include <vector> 

using namespace std; 



int main() 
{ 


    ifstream inFile; 
    ofstream outFile; 

    double score1, score2, score3; 
    double average; 

    string firstname; 
    string lastname; 

    inFile.open ("scores.txt"); 
    outFile.open ("scoreavg.out"); 

    ifstream ("scores.txt"); 
    string content; 

    while (inFile >> content) 
    { 
     cout << content << ' '; 



    inFile >> firstname >> lastname ; 
    outFile << "Bowler name: " <<firstname << " " << lastname << endl; 

    inFile >> score1 >> score2 >> score3; 
    outFile << "scores: " << setw(4) << score1 << setw(4) << score2 << setw(4)<< score3 << endl; 

    average = (score1 + score2 + score3)/3; 

    outFile << "Average score: " << setw(4) << average<< endl; 

    inFile.close(); 
    outFile.close(); 

    return 0; 

    } 
} 
+1

您可能需要为您的帖子添加语言特定的标签。它是'C++'吗? –

+0

'return 0;'存在你的函数。从你的while循环中取出。 – grim

+0

哦,我很抱歉,这是...它是C++ –

回答

0

简短的回答:在return 0;语句是while循环中。

您希望您的循环为输入中的每个记录执行一些读取和平均操作。一旦完成,你就可以通过关闭文件来清理。所以循环在记录被处理之后和清理之前结束。

将支架从return之后移至第一个close之前。

相关问题