Dev - C++ - ayuda con eliminar datos

   
Vista:

ayuda con eliminar datos

Publicado por kevin marroquin (1 intervención) el 07/06/2011 20:20:02
hola a todos los programadores tengo un problema con mi codigo de programacion, necesito eliminar datos de mi programa pero no puedo hacerlo si me podrian ayudar se los agradeceria mucho, en el case 5 necesito el codigo para eliminar un registro de actividad, muchas gracias de antemano les dejo mi codigo completo

#include <string.h>
#include <conio.h>
#include <stdio.h>
#define CANTMAX 40
struct fech
{
int d,m,a;
};
struct busca
{
char actividad[28];
char nombre[38];
char apellido[48];
char direccion[58];
char correo[68];
char telefono[8];
fech fecha;
}
aux;
int posicion;
int linea;
void main()
{
busca busk[CANTMAX];
int rpta,i,opcion;
int Numero=0;


FILE *archivo;

if ( archivo = fopen("PROGRACIONFINAL.txt", "w"))

{
do
{
clrscr();
printf("\n");
fprintf(archivo,"_______________________________________________________________________________ \n\n");
printf("*************************** AGENDA de ACTIVIDADES *************************** \n");
fprintf(archivo,"*************************** AGENDA de ACTIVIDADES *************************** \n");
printf(" 1---Agrege Actividades \n");
fprintf(archivo," 1---Agrege Actividades \n");
printf(" 2---Registro de actividades \n");
fprintf(archivo," 2---Registro de actividades \n");
printf(" 3---Busqueda de Actividades \n");
fprintf(archivo," 3---Busqueda de Actividades \n");
printf(" 4---Modificar alguna Actividad \n");
fprintf(archivo," 4---Modificar alguna Actividad \n");
printf(" 5---Eliminar Actividades \n");
fprintf(archivo," 5---Eliminar Actividades \n");
printf(" 6---Salir \n");
fprintf(archivo," 6---Salir \n");
printf("\n");
printf(" Seleccione: ");
do
{
scanf("%d",&opcion);
}
while(!(opcion>=1&&opcion<=6));
switch(opcion)
{

case 1:

clrscr();
if(Numero<CANTMAX)
printf("\nUSTED ELEGIO LA OPCION 1: INGRESO DE ACTIVIDAD:\n\n");
fprintf(archivo,"\nUSTED ELEGIO LA OPCION 1: INGRESO DE ACTIVIDAD:\n\n");
printf("\nAgregar Actividades: ");
fprintf(archivo,"\nAgregar Actividades: ");
fflush(stdin);
gets(busk[Numero].actividad);
printf("\nEscriba el Nombre: ");
fprintf(archivo,"\nEscriba el Nombre: ");
fflush(stdin);
gets(busk[Numero].nombre);
printf("\nEscriba el Apellido: ");
fprintf(archivo,"\nEscriba el Apellido: ");
fflush(stdin);
gets(busk[Numero].apellido);
printf("\nEscriba la Fecha (Dia/Mes/Anio): ");
fprintf(archivo,"\nEscriba la Fecha (Dia/Mes/anio): ");
do
{
printf("\nDia: ");
fprintf(archivo,"\nDia: ");
scanf("%d",&busk[Numero].fecha.d);
}
while(!(busk[Numero].fecha.d>=1 && busk[Numero].fecha.d<=31));
do{
printf("\nMes: ");
fprintf(archivo,"\nMes: ");
scanf("%d",&busk[Numero].fecha.m);
}
while(!(busk[Numero].fecha.m>=1 && busk[Numero].fecha.m<=12));
do
{
printf("\nAnio:");
fprintf(archivo,"\nAño: ");
scanf("%d",&busk[Numero].fecha.a);
}
while(!(busk[Numero].fecha.a<=2011 && busk[Numero].fecha.a<=2011));
printf("\nEscriba Numero Telefonico: ");
fprintf(archivo,"\nEscriba Numero Telefonico: ");
fflush(stdin);
gets(busk[Numero].telefono);
printf("\nEscriba la Direccion: ");
fprintf(archivo,"\nEscriba la Direccion: ");
fflush(stdin),
gets(busk[Numero].direccion);
printf("\nEscriba el Correo Electronico:");
fprintf(archivo,"\nEscriba el Correo Electronico:");
fflush(stdin);
gets(busk[Numero].correo);
Numero++;
fprintf(archivo,"\nPara Continuar Presione una Tecla\n\n");
printf("\nPara Continuar Presione una Tecla\n\n");
getch();
break;

case 2:
clrscr();
int i,j;
char menor[58];
printf("USTED ELIGIO LA OPCION 2: REGSITRO DE ACTIVIDADES...\n\n");
fprintf(archivo,"USTED ELIGIO LA OPCION 2: REGSITRO DE ACTIVIDADES\n\n");
printf("Registro de Actividades\n");
fprintf(archivo,"Registro de Actividades\n");
gotoxy(1,1); printf("\n");
gotoxy(1,5); printf("Numero\n");
gotoxy(1,5); fprintf(archivo,"Numero\n");
gotoxy(10,5);printf("Actividad\n");
gotoxy(10,5);fprintf(archivo,"Actividad\n");
gotoxy(20,5);printf(" Fecha\n");
gotoxy(20,5);fprintf(archivo," Fecha\n");
gotoxy(38,5);printf("Telefono\n");
gotoxy(38,5);fprintf(archivo,"Telefono\n");
gotoxy(55,5);printf("Correo\n");
gotoxy(55,5);fprintf(archivo,"Correo\n");
printf("\n");
fprintf(archivo,"\n");
linea=8;
for(i=0;i<Numero-1;i++)
{
for(j=i+1;j<Numero;j++)
if(strcmp(busk[i].actividad,busk[j].actividad)>0)
{
strcpy(menor,busk[i].actividad);
strcpy(busk[i].actividad,busk[j].actividad);
strcpy(busk[j].actividad,menor);
}
}
for(i=0;i<Numero;i++)
{
linea++;
gotoxy(1,linea); fprintf(archivo,"%i",i+1);
gotoxy(1,linea); printf("%i",i+1);
gotoxy(11,linea); printf("%s,",busk[i].actividad);
gotoxy(11,linea); fprintf(archivo,"%s,",busk[i].actividad);
gotoxy(22,linea); printf("%i,%i,%i",busk[i].fecha.d,busk[i].fecha.m,busk[i].fecha.a);
gotoxy(22,linea); fprintf(archivo,"%i,%i,%i",busk[i].fecha.d,busk[i].fecha.m,busk[i].fecha.a);
gotoxy(39,linea); printf("%s",busk[i].telefono);
gotoxy(39,linea); fprintf(archivo,"%s",busk[i].telefono);
gotoxy(52,linea); printf("%s \n",busk[i].correo);
gotoxy(52,linea); fprintf(archivo,"%s \n\n",busk[i].correo);
linea++;
}
getch();
break;

case 3:
if(Numero>0)
{
char auxactividades[58];
clrscr();
printf("USTED ELIGIO LA OPCION 3: BUSQUEDA DE ACTIVIDAD...\n\n");
fprintf(archivo,"USTED ELIGIO LA OPCION 3: BUSQUEDA DE ACTIVIDAD...\n\n");
printf("Escriba el Nombre de la Actividad a Buscar : \n");
fprintf(archivo,"Escriba el Nombre de la Actividad a Buscar : \n");
fflush(stdin);
gets(auxactividades);
for( i=0;i<Numero;i++)
if(strcmp(busk[i].actividad,auxactividades)==0)
{
printf("Actividad Encontrada\n");
fprintf(archivo,"Actividad Encontrada\n");
printf("nombre:%s,%s\n",busk[i].nombre,busk[i].apellido);
fprintf(archivo,"nombre:%s,%s\n",busk[i].nombre,busk[i].apellido);
printf("fecha :%d,%d,%d\n",busk[i].fecha.d,busk[i].fecha.m,busk[i].fecha.a);
fprintf(archivo,"fecha :%d,%d,%d\n",busk[i].fecha.d,busk[i].fecha.m,busk[i].fecha.a);
printf("numero telefonico:%s\n",busk[i].telefono);
fprintf(archivo,"numero telefonico:%s\n",busk[i].telefono);
printf("direccion:%s\n\n",busk[i].direccion);
fprintf(archivo,"direccion:%s\n",busk[i].direccion);
printf("correo:%s\n\n",busk[i].correo);
fprintf(archivo,"correo:%s\n",busk[i].correo);
}
getch();
break;
}


case 4:
if(Numero>0)
{
char auxmodificar[58];
int i,j;
char Aactividad[38];
char nuevo[58];
clrscr();
printf("USTED ELIGIO LA OPCION 4: MODIFICAR EL NOMBRE DE LA ACTIVIDAD...\n\n");
fprintf(archivo,"USTED ELIGIO LA OPCION 4: MODIFICAR EL NOMBRE DE LA ACTIVIDAD...\n\n");
printf("Escriba el nombre de la actividad a cambiar: \n");
fprintf(archivo,"Escriba el nombre de la actividad a cambiar: \n");
fflush(stdin);
gets(auxmodificar);
for( i=0;i<Numero;i++)
if(strcmp(busk[i].actividad,Aactividad))
{
printf("Escriba el nuevo Nombre\n");
fprintf(archivo,"\nEscriba el nuevo Nombre\n");
scanf("%s",&nuevo);
strcpy(busk[i].actividad,nuevo);
printf("Actividad Modificada\n");
fprintf(archivo,"Actividad Modificada\n\n");
}
getch();
break;

case 5:
if(Numero>0)
{
char auxborrar[58];
char Bactividad[58];
int i,j;
clrscr();
printf("USTED ELIGIO LA OPCION 5: BORRAR ACTIVIDAD...\n\n");
fprintf(archivo,"USTED ELIGIO LA OPCION 5: BORRAR ACTIVIDAD...\n\n");
printf("Escriba el nombre de la Actividad a Borrar: \n\n");
fprintf(archivo,"Escriba el nombre de la Actividad a Borrar: \n\n");
fflush(stdin);
gets(auxborrar);
for(i=0; i<Numero;i++)
{
if(!strcmp(busk[i].actividad,Bactividad))
{
for(j=i+1;j<Numero;j++)
strcpy(busk[j-1].actividad,busk[j].actividad);
Numero=Numero-1;
printf("Actividad Elminada\n");
fprintf(archivo,"Actividad Elminada\n");
}
}
if(i==Numero)
printf("Actividad Borrada\n");
fprintf(archivo,"Actividad Borrada\n\n");
}
getch();
break;

}
}
}
while(opcion!=6);

getch();

fclose(archivo);
}

}

muchisimas gracias si me pueden ayudar
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder