Título: Agenda telefonica
Publicado por: roma7776 en 31 Agosto 2023, 10:52 am
Hola, ayudenme por favor, tengo que modificar un numero de contacto en el case 2 aportando el numero telefonico (contactos[count].tel) en el case 1 ya lo tengo pero no se como poder modificarlo en el case 2, como lo pido y lo edito si esta guarado en contactos[count].tel, he tartado pero no me sale llego asta ahí, suponiendo que tengo muchos numeros y el programa lo tiene que buscar luego modificar, en el case 1 tambien tengo que agregar si deseo poner otro contacto mas, soy nueva programando y no entiendo muy bien :( :-( Código int main() { int count; int i = 0; int opc, telefono; do { system("cls"); printf("PIA\n"); printf("Programa para hacer una agenda usando Archivos\n"); printf("Elija una opcion.\n"); printf("1. Crear Contacto\n"); printf("2. Actualizar Contacto\n"); printf("3. Eliminar Contacto\n"); printf("4. Salir\n"); scanf("%d", &opc); switch(opc) { case 1: { system("cls"); printf("Escriba '0' si no quiere escribir algo.\n"); printf("Telefono : "); scanf("%d", &contactos[count].tel); printf("Apellido Paterno: "); fflush(stdin); scanf("%[^\n]", &contactos[count].AP); printf("Apellido Materno: "); fflush(stdin); scanf("%[^\n]", &contactos[count].AM); printf("Nombre (usa '_' para separar nombres): "); fflush(stdin); scanf("%[^\n]", &contactos[count].Nombre); printf("Telefono fijo: "); fflush(stdin); fflush(stdin); scanf("%[^\n]", &contactos[count].email); printf("Sitio web: "); fflush(stdin); scanf("%[^\n]", &contactos[count].sitio_web); printf("Notas (usa '_' para separar palabras): "); fflush(stdin); scanf("%[^\n]", &contactos[count].Notas); printf("Empresa (usa '_' para separar palabras): "); fflush(stdin); scanf("%[^\n]", &contactos[count].Empresa); printf("Cargo (usa '_' para separar palabras): "); fflush(stdin); scanf("%[^\n]", &contactos[count].Cargo); pf = fopen("Archivo.BIN", "at"); if(pf == NULL) { printf("\nNo se pudo abrir el archivo."); getch(); return -1; } fprintf(pf, "%s ", contactos[count].Nombre); fprintf(pf, "%s ", contactos[count].AP); fprintf(pf, "%s ", contactos[count].AM); fprintf(pf, "%ld ", contactos[count].tel); fprintf(pf, "%s ", contactos[count].email); fprintf(pf, "%s ", contactos[count].sitio_web); fprintf(pf, "%s ", contactos[count].Notas); fprintf(pf, "%s ", contactos[count].Empresa); fprintf(pf, "%s\n", contactos[count].Cargo); fclose(pf); printf("\nContacto agregado correctamente.\n"); printf("Este es el numero de contacto guardado %d.", contactos[count].tel); getch(); break; } case 2: { system("cls"); printf("Inserte el numero del contacto a modificar: "); fflush(stdin); scanf("%ld", &telefono);
Título: Re: Agenda telefonica
Publicado por: Locura_23 en 1 Septiembre 2023, 01:50 am
hola, supongo que contactos[] es tu arreglo de contactos, luego en el case 2 necesitas una forma de identificar el contacto a modificar, puede ser el nombre o algún tipo de ID, posteriormente necesitas una función para buscar en el arreglo de contactos ese contacto a modificar, para finalmente modificarlo.
|