Buon giorno a tutti!
ora vi illustro il mio problema..praticamente ricevo in input un file txt con nella prima riga indicato il numero di elementi che seguono e su ogni riga che segue il nome dello studente separato da uno spazio dal suo numero di matricola. In primo luogo devo separare i nomi e le matricole in 2 file diversi e fin qui tutto ok.. poi devo chiedere all'utente di digitare il nome dello studente di cui vuole conoscere il numero di matricola.. io a questo punto devo cercare nel nuovo file dove sono presenti solo i nomi, lo studente, capire in che posizione si trova, accedere al file matricole e da li stampare il numero di matricola corrispondente.
Vi allego il codice così magari voi riuscite ad individuare il mio errore.. grazie =)
codice:
#include<iostream>
#include<fstream>
#include<stdlib.h>
#include<stdio.h>
using namespace std;
int main (void)
{
fstream input, outputnomi, outputmatricole;
input.open("esercizio.txt",ios::in);
outputnomi.open("outputnomi.txt",ios::out);
outputmatricole.open("outputmatricole.txt",ios::out);
int i,k,contatore;
char nome[10], matricola[7], nominativo[10],outputmatricola[7],nomeout[10];
input>>i;
for (k=1;k<=i;++k)
{
input>>nome;
input>>matricola;
outputnomi<<nome<<endl;
outputmatricole<<matricola<<endl;
}
cout<<"Digita il nome dello studente del quale vuoi conoscere la matricola\n";
cin>>nominativo;
outputnomi.open("outputnomi.txt",ios::in);
outputmatricole.open("outputmatricole.txt",ios::in);
for(k=0;k<=i;++k)
{
outputnomi>>nomeout;
if(!strcmp(nominativo,nomeout))
{outputmatricole>>outputmatricola;
cout<<outputmatricola;}
}
system("pause");
return 0;
}