Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - zultanckl

#1
Programación C/C++ / agenda electronica
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
  • =contactos[x+1];
    }
    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;
    }