Agenda en lenguaje c

Solo disponible en BuenasTareas
  • Páginas : 6 (1345 palabras )
  • Descarga(s) : 0
  • Publicado : 7 de febrero de 2011
Leer documento completo
Vista previa del texto
#include
#include
#include
#define TAM 20
struct agenda
{
char nombre[TAM];
char movil[10];
char casa[10];
char otro[10];
};
void insertar(struct agenda );
void visualizar(struct agenda );
void buscar(struct agenda );
void modificar(struct agenda );
void borrar(struct agenda );
void acerca();
void nombre(struct agenda );
void casa(struct agenda );void movil(struct agenda );
void otro(struct agenda );
int valido(char *, struct agenda );
int main()
{
struct agenda datos;
char opcion;
int salir=0;

do
{
system("cls");
printf("\t\t\t\tHOSPITAL\n");
printf("\t\t\t\t------\n");
printf("\t\t\t1. Ingresar cita\n");
printf("\t\t\t2. Visualizar citas\n");//printf("\t\t\t3. Buscar registro\n");
//printf("\t\t\t4. Modificar registro\n");
printf("\t\t\t5. Eliminar cita\n");
//printf("\t\t\t6. Acerca de Agenda\n\n");
printf("\t\t\tPulse ESC para Salir\n");
opcion=getch();
switch(opcion)
{
case '1': insertar(datos);
break;
case '2': visualizar(datos);break;
case '3': buscar(datos);
break;
case '4': modificar(datos);
break;
case '5': borrar(datos);
break;
case '6': acerca();
break;
case 27: salir=1;
break;
}
}
while(!salir);
}

void insertar(struct agenda datos)
{FILE *f;
int result;
char movil[10];
system("cls");
f=fopen("Agenda.dat","ab");
if(!f)
{
printf("Error en la apertura de la agenda\n");
getch();
exit(1);
}
printf("Al LA INTRODUCCION DE REGISTROS, EN NOMBRE ESCRIBE '*'\n");
printf("Nombre: ");
gets(datos.nombre); fflush(stdin);while(strcmp(datos.nombre,"*"))
{
printf("horario: ");
gets(movil); fflush(stdin);
fclose(f);
result=valido(movil, datos);
f=fopen("Agenda.dat","ab");
while(!result)
{
printf("Hora actualmente ocupada\n");
printf("Hora: ");
gets(movil); fflush(stdin);
fclose(f);
result=valido(movil,datos);
f=fopen("Agenda.dat","ab");
}
strcpy(datos.movil,movil);
printf("numero de seguridad social: ");
gets(datos.casa); fflush(stdin);
printf(": ");
gets(datos.otro); fflush(stdin);
fwrite(&datos,sizeof(datos),1,f);
system("cls");
printf("PARA TERMINAR LA INTRODUCCION DE REGISTROS, EN NOMBREESCRIBE '*'\n");
printf("Nombre: ");
gets(datos.nombre); fflush(stdin);
}
fclose(f);
}

void visualizar(struct agenda datos)
{
FILE *f;
system("cls");
f=fopen("Agenda.dat","rb");
if(!f)
{
printf("Error en la apertura de la agenda\n");
getch();
exit(1);
}while(fread(&datos,sizeof(datos),1,f))
{
printf("Nombre: %s\n", datos.nombre);
printf("Movil: %s\n", datos.movil);
printf("Casa: %s\n", datos.casa);
printf("Otro: %s\n", datos.otro);
getch();
system("cls");
}
fclose(f);
}

void buscar(struct agenda datos)
{
char opcion;
int salir=0;
do
{
system("cls");printf("\t\t\t\tBUSCAR\n");
printf("\t\t\t\t------\n");
printf("\t\t\t1. Nombre\n");
printf("\t\t\t2. Movil\n");
printf("\t\t\t3. Casa\n");
printf("\t\t\t4. Otro\n\n");
printf("\t\t\tPulse ESC para Salir\n");
opcion=getch();
switch(opcion)
{
case '1': nombre(datos);
break;
case...
tracking img