Título: agenda electronica Publicado por: zultanckl en 7 Diciembre 2013, 02:29 am hola que ta tengo este codigo pero no logro hacerlo que borre el registro que le pido si me da la opción pero no lo borra y no se como modificar los registros si me pudieran ayudar
#include <stdio.h> #include <stdlib.h> struct agenda { char nombre[50]; char apellido1[50]; char apellido2[50]; int edad[3]; int telefono[15]; int cod[30]; char mail[30]; }; struct agenda contactos[100]; int main(int argc, char *argv[]) { int opcion,i=0,x=0,opc; int MAX=100,cont=0,pos=0; char contactos2[50],contactos3[50]; void actualizar(struct agenda,int); do{ printf (" \t\t\t************************\n"); printf (" \t\t\t********* MENU *********\n"); printf (" \t\t\t************************\n\n"); printf (" \t\t1- Agregar un contacto\n"); printf (" \t\t2- Listar todos los contactos\n"); printf (" \t\t3- Buscar un contacto por codigo\n"); printf (" \t\t4- Borrar un contacto\n"); printf (" \t\t5- Quien cumple los annos hoy\n"); printf (" \t\t6- Salir\n\n"); printf ("\tSelecciona una opcion: "); fflush(stdin); scanf("%d",&opcion); switch(opcion) { case 1: if(cont == MAX) { printf("Agenda llena."); getch(); } else { cont++; system("cls"); printf("Introduzca un nombre: "); fflush(stdin); scanf("%s", contactos[cont].nombre); printf("Introduzca el apellido paterno: "); fflush(stdin); scanf("%s", contactos[cont].apellido1); printf("Introduzca el apellido materno: "); fflush(stdin); scanf("%s", contactos[cont].apellido2); printf("Introduzca la edad: "); fflush(stdin); scanf("%s", contactos[cont].edad); printf("Introduzca el numero de telefono: "); fflush(stdin); scanf("%s", contactos[cont].telefono); printf("Introduzca el codigo: "); scanf("%s", contactos[cont].cod); printf("Introduzca el e-mail: "); fflush(stdin); scanf("%s", contactos[cont].mail); } printf("\n Pulse enter para volver al menu."); getch(); system("cls"); break; case 2: system("cls"); for(i=1;i<=cont;i++) { printf("Nombre: %s\n", contactos.nombre); printf("Apellido primero: %s\n", contactos.apellido1); printf("Apellido segundo: %s\n", contactos.apellido2); printf("Edad: %s\n", contactos.edad); printf("Telefono: %s\n", contactos.telefono); printf("Codigo: %s\n", contactos.cod); printf("E-mail: %s\n\n", contactos.mail); } getch(); system("cls"); break; case 3: system("cls"); fflush(stdin); printf("Introduzca el Codigo del contacto que desea buscar: "); gets(contactos2); for(i=1;i<=MAX;i++) { if(strcmp(contactos2,contactos.cod)==0) { printf("Nombre: %s\n", contactos.nombre); printf("Apellido patreno: %s\n", contactos.apellido1); printf("Apellido materno: %s\n", contactos.apellido2); printf("Edad: %s\n", contactos.edad); printf("Telefono: %s\n", contactos.telefono); printf("Codigo: %s\n", contactos.cod); printf("E-mail: %s\n", contactos.mail); } } getch(); system("cls"); break; case 4: system("cls"); fflush(stdin); printf("Introduzca el Codigo del contacto que desea borrar: "); gets(contactos2); for(i=1;i<=MAX;i++) { if(strcmp(contactos2,contactos.cod)==0) { printf("Nombre: %s\n", contactos.nombre); printf("Apellido patreno: %s\n", contactos.apellido1); printf("Apellido materno: %s\n", contactos.apellido2); printf("Edad: %s\n", contactos.edad); printf("Telefono: %s\n", contactos.telefono); printf("Codigo: %s\n", contactos.cod); printf("E-mail: %s\n", contactos.mail); } } printf("Estas seguro que quieres eliminar este registro:\t\t\n1-Si\t\t\t2-No\n"); scanf("%s",&opc); if(opc==1){ for (i=0;i<MAX;i++) { if(strcmp(contactos2,contactos.cod)==0) { contactos=contactos[i+1]; for(x=i;x<cont;x++) { contactos
x--; cont--; } system("cls"); break; } }else if(opc==2){ system("cls"); break; } system("cls"); break; case 5: printf("Que registro va actualizar dame el Codigo: \n"); scanf("%s",contactos); gets(contactos2); for(i=1;i<=MAX;i++) { if(strcmp(contactos2,contactos.cod)==0) { printf("Que dato desea actualizar\n"); printf("1)Nombre \n2)Apellido Paterno \n3)Apellido Materno \n4)Edad \n5) \n6)Telefono \n7)codigo \n8)Email\n "); scanf("%s",opc); printf("Registro Actualizado\n"); system("cls"); break; { { if (opc=0){ }else if(opc==1){ printf (" Nombre ? \n"); scanf ("%s", contactos.nombre); }else if(opc==2){ printf (" Apellido Paterno ? \n"); scanf ("%s",contactos.apellido1); }else if(opc==3){ printf (" Apellido Materno ? \n"); scanf ("%s",contactos.apellido2); }else if(opc==4){ printf (" Edad ? \n"); scanf ("%d",contactos.edad); }else if(opc==5){ printf (" Telefono ? \n"); scanf ("%ld",contactos.telefono); }else if(opc==6){ printf (" Codigo? \n"); scanf ("%ld",contactos.cod); }else if(opc==7){ printf (" Cual es tu e-mail ? \n"); scanf ("%s",contactos.mail); } } } } } system("cls"); break; case 6: break; default: printf ("\n\nOpcion no valida profavor inresa un numero entre 1 y 6\n\n\n"); break; } }while (opcion<6); system("PAUSE"); return 0; } |