Código
#include <cstdlib> #include <iostream> using namespace std; struct Persona { char Nombre[65]; char apellido[65]; char numcel[65]; }plantilla[100]; int main(int argc, char *argv[]) { int opc; /// variables opcion nuevo contacto: int r; int cont=0; /// sirve tambien para opcion 2 y 3. /// variable opcion lista de contactos: int a; int tr; //// variable opcion de salida: int s; //// variables opcion buscador: char buscont[65]; int bus1; int bus2; int vrf=0; //// Variables opcion Opciones: int op; int rep; ///variable opciones 1 modificar int g; int val; int va; int mod; int op1; // variables opciones 2 borrar int del; int delm; int h; do { system("CLS"); cout<< "Selecione Su Opcion: "; cout<< endl; cout<< "1. Agregar un nuevo Contacto. "; cout<<endl; cout<< "2. Ver la lista de Contactos agregados. "; cout<<endl; cout<< "3. Buscar contacto por nombre. "; cout<<endl; cout<< "4. Opciones. "; cout<<endl; cout<< "5. Salir. "; cout<<endl; cout<< "Opcion: "; cin>> opc; cout<<endl; rep=0; system("CLS"); switch (opc) { //Comienza agregar contactos. case 1: r=cont++; cout<< "Agregue el nombre del nuevo contacto: "; cin>> plantilla[r].Nombre; cout<<endl; cout<< "Agregue el apellido del nuevo contacto: "; cin>> plantilla[r].apellido; cout<<endl; cout<< "Agregue el numero movil del nuevo contacto: "; cin>> plantilla[r].numcel; cout<<endl; system("CLS"); break; //termina agregar contactos. case 2: //comienza lista de contactos. cout<< "Lista de Contactos: "; cout<< endl; if (cont==0) { cout<< "Lista de contactos vacia."; cout<<endl; system ("PAUSE"); system("CLS"); break; } else { for(a=0;a<r+1;a++) { tr=a; cout<< tr+1<< ". "; cout<< plantilla[a].Nombre; cout<<endl; } system("PAUSE"); system("CLS"); break; } //termina lista de contactos. case 3: //comienza buscar contactos. cout<< "Igrese el nombre que desea buscar: "; cin>> buscont; cout<<endl; if (cont==0) { cout<< "Lista de contactos vacia."; cout<<endl; system ("PAUSE"); system("CLS"); break; } for(bus1=0;bus1<r+1;bus1++) { if (strcmp(plantilla[bus1].Nombre,buscont)==0) { cout<<"Resulatdo Encontrado: "<<endl; cout<<"Nombre: "<<plantilla[bus1].Nombre<<endl; cout<<"Apellido: "<<plantilla[bus1].apellido<<endl; cout<<"Numero Movil: "<<plantilla[bus1].numcel<<endl; vrf=1; cout<<endl; } } if (vrf==0) { cout<<"Resultado No Encontrado....."<<endl; } system ("PAUSE"); vrf=0; break; //termina buscar contactos. case 4: //comienza opciones. do { system ("CLS"); cout<<"Eliga su nueva opcioc: "<<endl; cout<<"1.Modificar contacto."<<endl; cout<<"2.Borrar contacto. "<<endl; cout<<"3.Menu principal. "<<endl; cout<<"Opcion: "; cin>>op; system ("CLS"); switch(op) { case 1: //modificar contactos: //lista contactos: cout<< "Lista de Contactos: "; cout<< endl; if (cont==0) { cout<< "Lista de contactos vacia."; cout<<endl; system ("PAUSE"); system("CLS"); break; } else { for(a=0;a<r+1;a++) { tr=a; cout<< tr+1<< ". "; cout<< plantilla[a].Nombre; cout<<endl; } } //fin lista contactos. //pregunta 1: cout<<"Seleccione el numero del contacto que desea modificar: "; cin>>val; mod=val-1; g=r+1; if (val<=g) { //opcion modificar contacto: do { system ("CLS"); cout<<"Contacto:"<<endl; cout<<"1. Nombre: "<<plantilla[mod].Nombre<<endl; cout<<"2. Apellido: "<<plantilla[mod].apellido<<endl; cout<<"3. Numero Movil: "<<plantilla[mod].numcel<<endl; cout<<"4. Menu anterior."<<endl; cout<<"Seleccione la opcion que desea modificar: "; cin>>op1; switch (op1) { case 1: cout<< "Modifique el nombre del contacto: "; cin>> plantilla[mod].Nombre; cout<<endl; break; case 2: cout<< "Modifique el apellido del contacto: "; cin>> plantilla[mod].apellido; cout<<endl; break; case 3: cout<< "Modifique el numero de movil del contacto: "; cin>> plantilla[mod].numcel; cout<<endl; break; case 4: rep=1; break; } }while (rep==0);//fin modificar contacto. }else {cout<<"El contacto no existe."<<endl; system ("PAUSE");} rep=0; //fin pregunta 1. break; //fin modificar contactos. case 2: //borrar contactos. //lista contactos: cout<< "Lista de Contactos: "; cout<< endl; if (cont==0) { cout<< "Lista de contactos vacia."; cout<<endl; system ("PAUSE"); system("CLS"); break; } else { for(a=0;a<r+1;a++) { tr=a; cout<< tr+1<< ". "; cout<< plantilla[a].Nombre; cout<<endl; } } //fin lista contactos. //pregunta 2: cout<<"Seleccione el numero del contacto que desea eliminar: "; cin>>del; delm=del-1; h=r+1; if (del<=h) { plantilla[delm].Nombre; plantilla[delm].apellido; plantilla[delm].numcel; break; }else {cout<<"El contacto no existe."<<endl; system ("PAUSE");} //fin regunta 2. system ("PAUSE"); break; //fin borrar contactos. case 3: rep=1; break; } }while (rep==0); break; //termina opciones case 5: //comienza salida. cout<< "De Verdad Desea Salir?"; cout<< endl; cout<< "1.Si. 2.No."; cout<<endl; cout<< "opcion: "; cin>>s; if (s==1) { return EXIT_SUCCESS; } else { break; } } } while (1<opc || 5>opc); //termina salida. }