Estimados tengo el siguiente código y cuando el programa hace uso del primer cin en la primera vuelta del ciclo for en la lectura se saltea el nombre y apellido, pero no en la segunda o tercera repetición ,etc.
#include <iostream>
using namespace std;
struct venta{
char nombre[20];
char apellido[20];
char direccion[30];
char telefono[20];
char producto[50];
}cliente1[100];
int main (){
//lectura de datos
int ingresos;
cout<<"INgresar cantidad de ventas"<<endl;
cin>>ingresos;
for (int i=0;i<ingresos;i++){
cout<<"Nombre: "<<endl;
cin.getline(cliente1[i].nombre,20,'\n');
cout<<"Apellido: "<<endl;
cin.getline(cliente1[i].apellido,20,'\n');
cout<<"Dirección: "<<endl;
cin.getline(cliente1[i].direccion,30,'\n');
cout<<"PRoducto: "<<endl;
cin.getline(cliente1[i].producto,50,'\n');
cout<<"Telefono: "<<endl;
cin.getline(cliente1[i].telefono,20,'\n');
}
// escritura de datos
for (int j=0;j<ingresos;j++){
cout<<"Nombre: "<<cliente1[j].nombre<<endl;
cout<<"Apellido: "<<cliente1[j].apellido<<endl;
cout<<"Telefono: "<<cliente1[j].telefono<<endl;
cout<<"Dirección: "<<cliente1[j].direccion<<endl;
cout<<"PRoducto: "<<cliente1[j].producto<<endl;
}
}
Lee esto:
https://blogdelingeniero1.wordpress.com/2014/06/08/limpiar-el-buffer-de-entrada-estandar-en-c/comment-page-1/ (https://blogdelingeniero1.wordpress.com/2014/06/08/limpiar-el-buffer-de-entrada-estandar-en-c/comment-page-1/)
http://michelletorres.mx/limpiar-el-buffer-en-c/ (http://michelletorres.mx/limpiar-el-buffer-en-c/)
Gracias, problema resuelto.