Devo fare un programmino che mi legge da file una sequenza di nomi e devo inserire in due vettori o in due file (come ho fatto) i nomi maschili e poi i nomi femminili.
Ho usato Dev, ecco i codici:

MAIN

codice:
#include <cstdlib>
#include <iostream>
#include <fstream>
#include "prova.h"
#include <string.h>

using namespace std;

int main(int argc, char *argv[])
{
    //vettore che conterrà i nomi
    vettore nomi;
    //riempimento vettore
    int r=0;
    //stringa in cui copierò le parole
    stringa parola;
    //variabile che userò per vedere se un nome è maschio o femmina
    int n;

    
    cout<<"Leggo il file...\n";
    //leggo da file i nomi
    leggiFile(nomi,r);


    
    //cerco i nomi maschili e femminili all'interno
    cercaNomi(nomi, r, parola, n);
    
    
    
    
    system("PAUSE");
    return EXIT_SUCCESS;
}

PROVA.CPP
codice:
#include <cstdlib>
#include <iostream>
#include <fstream>
#include "prova.h"
#include <string.h>

using namespace std;

void leggiFile(vettore nomi, int &r)
{
     fstream f;
     f.open("Nomi.txt", ios::in);
     if(!f)
      {
           cout<<"Non trovo il file....\n";
      }
     else
      {
           //metto i nomi nel file
           int i=0;
           while(f.eof())
           {
                       
                       f>>nomi[i];
                       i++;
                       r=i;
           }
      }
     f.close();
}

void cercaNomi(vettore nomi, int r, stringa parola, int &n)
{
     for (int i=0; i<r;i++)
      {
         strcpy(parola,nomi[i]);
         n=strlen(parola)-1;
         //sistemo le parole in due file diversi
         sistemaNomi1(parola, n);
         sistemaNomi2(parola, n);
      }
}

void sistemaNomi1(stringa parola, int n)
{
     fstream f;
     f.open("Nomi Maschili.txt", ios::in);
     if(!f)
      {
           cout<<"Non trovo il file....\n";
      }
     else
      {
           //metto i nomi nel file
           if(parola[n]=='o')
           f<<parola[n];
      }
     f.close();       
}      

void sistemaNomi2(stringa parola, int n)
{
     fstream f;
     f.open("Nomi Femminili.txt", ios::in);
     if(!f)
      {
           cout<<"Non trovo il file....\n";
      }
     else
      {
           //metto i nomi nel file
           if(parola[n]=='a')
           f<<parola[n];
      }
     f.close();       
}

prova.h

codice:
#ifndef PROVA_H
#define PROVA_H
#define N 30
typedef char stringa[256];
typedef stringa vettore[N];


void leggiFile(vettore, int &);
void cercaNomi(vettore, int, stringa, int &);
void sistemaNomi1(stringa, int);
void sistemaNomi2(stringa, int);

#endif