Bien, al grano. Estoy siguiendo el curso de c.conclase, estoy en la parte de estructuras y me gustaría que revisen este código para ver si es el correcto, y si me pueden dar recomendaciones.
Código HTML:
Escribir un programa que almacene en un array los nombres y números de teléfono de 10 personas. El programa debe leer los datos introducidos por el usuario y guardarlos en memoria. Después debe ser capaz de buscar el nombre correspondiente a un número de teléfono y el teléfono correspondiente a una persona. Ambas opciones deben se accesibles a través de un menú, así como la opción de salir del programa. El menú debe tener esta forma, más o menos: a) Buscar por nombre b) Buscar por número de teléfono c) Salir
Código:
Muchas gracias #include <iostream> #include <cstring> using namespace std; int b_nom(char name[10]); int b_tel(char phone[10]); struct Persona { char Nom[10]; char Tel[10];//Ver composicion telefono tipo int }Cliente[5]; int main() { char option; char e_nom[10]; char e_tel[10]; for(int i=0;i<5;i++) { cout<<"Nombre:"<<endl; cin>>Cliente[i].Nom; cout<<"Telefono:"<<endl; cin>>Cliente[i].Tel; } cout << "a) Buscar por nombre" << endl; cout << "b) Buscar por numero de telefono" <<endl; cout << "c) Salir" <<endl; cin >>option; switch(option) { case 'a': { cout<<"Ingresa nombre:"<<endl; cin>>e_nom; if(b_nom(e_nom)<5) { int pos=b_nom(e_nom); cout<<"Nombre encontrado"<<endl; cout<<"Cliente N:"<<pos+1<<" nombre: "<<Cliente[pos].Nom<<"Tel: "<<Cliente[pos].Tel<<endl;//Devolucion de los datos de cliente encontrado } else{cout<<"No se encuentra"<<endl;} } break; case 'b': { cout<<"Ingresa telefono:"<<endl; cin>>e_tel; if(b_tel(e_tel)<5) { int pos=b_tel(e_tel); cout<<"Nombre encontrado"<<endl; cout<<"Cliente N:"<<pos+1<<" nombre: "<<Cliente[pos].Nom<<"Tel: "<<Cliente[pos].Tel<<endl;//Devolucion de los datos de cliente encontrado. } else{cout<<"No se encuentra"<<endl;} } break; case 'c':cout<<"Adios"<<endl; break; default:break; } system("pause"); return 0; } int b_nom(char name[10])//Funcion buscar por nombre { bool encontrado=0; int i=0; while(i<5&&!encontrado) { if(strcmp(name,Cliente[i].Nom)==0) { encontrado=1; } i++; } if(i<5){return --i;} else{return 6;} } int b_tel(char phone[10])//Funcion buscar por telefono { bool encontrado=0; int i=0; while(i<5&&!encontrado) { if(strcmp(phone,Cliente[i].Tel)==0) { encontrado=1; } i++; } if(i<5){return --i;} else{return 6;} }