Salve a tutti praticamente non riesco a capire perché quando eseguo questo codice mi salta sempre il primo nome.Praticamente il programma deve ricevere una lista di nomi e cognomi(che possono contenere spazi).
di seguito vi posto il codice
#include<iostream>
using namespace std;
int main(){
int i,N;
const int MAXCHAR=20;
const int MAX=50;
typedef char tipoParola[MAXCHAR+1];
typedef struct{
tipoParola nome;
tipoParola cognome;
}coppia;
coppia coppie[MAX];
cout<<"inserisci la lunghezza della lista"<<endl;
cin>>N;
for(i=0;i<N;i++){
cout<<"nome"<<endl;
cin.getline(coppie[i].nome,MAX);
cout<<"cognome"<<endl;
cin.getline(coppie[i].cognome,MAX);
}
for(i=0;i<N;i++){
cout<<coppie[i].nome<<endl;
cout<<coppie[i].cognome<<endl;
}
return 0;
}