how can i sort this file alphabetically by first name when in the program???

#include<iostream>
#include<cstdlib>
#include<iomanip>
#include<string>
#include<fstream>
#include<vector>
usingnamespace std;
struct players
{
    string fname;
    string lname;
    int atbats;
    int runs;
    int hits;
    int doubles;
    int triples;
    int hrs;
    int rbi;
    int sos;
    double avg;
};
int main()
{

    void bubblesort2(players team[]);
    string ifile="top100off.txt", ofile="top60def.txt", name;
    players team[45];
    int i, c;

    ifstream inFile; 
    inFile.open(ifile.c_str());
    if (inFile.fail()) 
    {
        cout << "The file was not opened." << endl;
        exit(1);
    }
    inFile >> team[0].fname >> team[0].lname >> team[0].atbats >> team[0].runs
    >> team[0].hits >> team[0].doubles >> team[0].triples >> team[0].hrs 
    >> team[0].rbi >> team[0].sos >> team[0].avg;
    for(i=1; i<45; i++)
    {
        inFile >> team[i].fname >> team[i].lname >> team[i].atbats >> team[i].runs
        >> team[i].hits >> team[i].doubles >> team[i].triples >> team[i].hrs 
        >> team[i].rbi >> team[i].sos >> team[i].avg;
        cout << team[i].fname << " " << team[i].lname << " " << team[i].atbats << " " << team[i].runs
        << " " << team[i].hits << " " << team[i].doubles << " " << team[i].triples << " " << team[i].hrs 
        << " " << team[i].rbi << " " << team[i].sos << " " << team[i].avg << "\n"; 
    }
    ofstream outFile; 
    outFile.open(ofile.c_str());
    if (outFile.fail())
    {
        cout << "Failed!!!." << endl;
    }
    bubblesort2(team);


    for (c=1; c<=5; c++)
    {
        cout << "Type a last from the offensive player list. " << endl;
        getline(cin, name);
        if (islower(name[0]))
        {
            name[0]=toupper(name[0]);
        }
        for (i=0; i<45; i++)
        {
            if (team[i].lname == name)
            {
                outFile << team[i].fname << " " << team[i].lname << " " << team[i].atbats << " " << team[i].runs
                << " " << team[i].hits << " " << team[i].doubles << " " << team[i].triples << " " << team[i].hrs 
                << " " << team[i].rbi << " " << team[i].sos << " " << team[i].avg << endl;
            }

        }
    }
    for(i=0; i<45; i++)
    {
        outFile << team[i].fname << " " << team[i].lname << " " << team[i].atbats << " " << team[i].runs
        << " " << team[i].hits << " " << team[i].doubles << " " << team[i].triples << " " << team[i].hrs 
        << " " << team[i].rbi << " " << team[i].sos << " " << team[i].avg << endl;
    }
    outFile.close();


    cout << "Closed.";
    cin.ignore();
    return 42;
}
void bubbleSort2(players team[]) 
{
    bool doMore;
    do {
        doMore = false; 
        for (int i=0; i<45; i++) 
        {
            if (team[i].lname > team[i+1].lname) 
            {

                players temp = team[i];
                team[i] = team[i+1]; 
                team[i+1] = temp;
                doMore = true; 
            }
        }
    } while (doMore);
}

Recommended Answers

All 2 Replies

Hello,

usingnamespace std;

Change this to using namespace std; . Your code will compile fine now. If there's another problem with it, please be more specific and tell us what the problem is. Also attach the files you are trying to open or describe them.

Regards Niek

top100off.txt

there is one i cant upload the other but i fixed namespace and it wont sort them. How can i sort player alphabetically by first name??

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.