Perfetto, ora funziona ! e un'ultima cosa ...per quanto riguarda la modifica del file ? nemmeno quella mi riesce ....
#include<iostream>
#include<cstdlib>
#include<string.h>
#include<fstream>
#define N 100
typedef char stringa[N];
typedef stringa vettore[N];
using namespace std;
void input(int&n, vettore v){
int i=0;
fstream f;
f.open("Lista Pazienti.txt",ios::in);
while(!f.eof()){
f>>v[i];
i++;
n=i;
}
}
void stampa(int n, vettore v){
int i;
cout<<"La lista dei pazienti e':"<<endl;
for(i=0;i<n;i++){
cout<<v[i]<<endl;
}
}
void ripetizione(int n, vettore v, int&cont, stringa s){
int i;
cont=0;
cout<<"Inserisci il cognome che vuoi cercare:"<<endl;
cin>>s;
for(i=0;i<n;i++){
int esito=strcmp(v[i],s);
if(esito==0){
cont++;
}
}}
void massimo(int n, vettore v, int&max, int&imax){
int i;
max=strlen(v[0]);
imax=0;
for(i=0;i<n;i++){
if(strlen(v[i])>max){
max=strlen(v[i]);
imax=i;
}
}}
void sostituzione(int n, vettore v, int max, int imax){
fstream f;
f.open("Lista Pazienti.txt",ios::out);
int i;
f>>n;
for(i=0;i<n;i++){
if(strlen(v[i])<=5){
strcpy(v[i],v[imax]);
i=imax;
i++;
}
f<<v[i]<<endl;
}
}
int main(){
int i,n;
vettore v;
stringa s;
fstream f;
int cont=0;
int max,imax;
input(n,v);
stampa(n,v);
ripetizione(n,v,cont,s);
cout<<"Il cognome"<<endl<<s<<endl<<"e' presente"<<endl<<cont<<endl<<"volte nella lista dei pazienti!"<<endl;
massimo(n,v,max,imax);
cout<<"Il cognome piu' lungo e':"<<endl<<v[imax]<<endl;
sostituzione(n,v,max,imax);
stampa(n,v);
system("PAUSE");
return 0;
}