Pero para dar de baja a un socio mediante el DNI, no consigo hacer que funcione(subprograma BajaSocios) para borrar el DNI que la persona te indique.
El código es el siguiente:
Código
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <string.h>
#define MAX_Socios 100
#define MAX_Cursos 10
#define TRUE 1
#define FALSE 0
//Declaración de estructuras
struct estructura_datos_socio
{
char nombre[40];
char DNI[10];
int TipoSocio;
}datos_socio[MAX_Socios];
//Variables Globales
int opcion,opcion1,opcion2,opcion3;
int contador=1;
//Prototipos de subprogramas
int Menu();
int GestSocios();
int GestCursos();
int InformesEconomicos();
void AltaSocios(struct estructura_datos_socio *datos_socio,int contador);
void BajaSocios(struct estructura_datos_socio *datos_socio, int contador);
void ModificacionSocios();
void ConsultaSocios(struct estructura_datos_socio *datos_socio,int contador);
void PagoMensual();
void SociosNormales();
void SociosJubilados();
void SociosINfantiles();
void GeneralSocios();
int main()
{
Menu();
return 0;
}
//Subprograma Menú
int Menu()
{
do{
switch (opcion)
{
GestSocios();
break;
GestCursos();
break;
InformesEconomicos();
break;
break;
default:
}
}while(opcion!=0);
return (opcion);
}
/**************************************************************************************************************
Subprograma de gestión de socios
***************************************************************************************************************/
/***********************************************************************************
Subprograma: GestSocios Tipo: void
Prerrequesitos: Opción 1 para ejecutar el subprograma
Objetivo: Presenta en la pantalla el submenú de gestión de socios
************************************************************************************/
int GestSocios()
{
do
{
switch (opcion1)
{
AltaSocios(datos_socio,contador);
contador++;
break;
BajaSocios(datos_socio, contador);
contador--;
break;
ModificacionSocios();
break;
ConsultaSocios(datos_socio,contador);
break;
case 5: PagoMensual();
break;
case 6: SociosNormales();
break;
case 7: SociosJubilados();
break;
case 8: SociosInfantiles();
break;
case 9: GeneralSocios();
break;
case 0: ;
break;
default:
}
}while (opcion1!=0);
}
/**************************************************************************************************************
Subprograma de gestión de cursos
***************************************************************************************************************/
/***********************************************************************************
Subprograma: GestCursos Tipo: Submenú
Prerrequesitos: Opción 2 para ejecutar el subprograma
Objetivo: Presenta en la pantalla el submenú de gestión de cursos
************************************************************************************/
int GestCursos()
{
}
/**************************************************************************************************************
Subprograma de infomes económicos
***************************************************************************************************************/
/***********************************************************************************
Subprograma: InformesEconomicos Tipo: Submenú
Prerrequesitos: Opción 3 para ejecutar el subprograma
Objetivo: Presenta en la pantalla el submenú de informes económicos
************************************************************************************/
int InformesEconomicos()
{
}
/***********************************************************************************
Subprograma: AltaSocios Tipo: Procedimiento
Prerrequesitos: Opción 1 para ejecutar el subprograma
Objetivo: Pedir datos generales del socio(DNI,nombre y tipo)
************************************************************************************/
void AltaSocios(struct estructura_datos_socio *datos_socio,int contador)
{
int validacion;
char letraDNI;
do{
if ((datos_socio[contador].TipoSocio >=1) && (datos_socio[contador].TipoSocio <=3))
{
validacion='v';
}
else
{
validacion='f';
}
}while(validacion=='f');
do{
{
validacion='v';
for (contador;datos_socio[contador].DNI<9;contador++)
}
else
{
validacion='f';
}
}while(validacion=='f');
}
/***********************************************************************************
Subprograma: BajaSocios Tipo: Procedimiento
Prerrequesitos: Opción 2 para ejecutar el subprograma
Objetivo: Eliminar datos generales del socio(DNI,nombre y tipo)
************************************************************************************/
void BajaSocios(struct estructura_datos_socio *datos_socio, int contador)
{
int baja_socio;
int i=0;
int posicion;
for (i=0; i>MAX_Socios; i++)
{
if (datos_socio[i].DNI == baja_socio)
{
posicion=i;
for (i=posicion; i<MAX_Socios; i++)
{
datos_socio[i]= datos_socio[i+1];
break;
}
break;
}
if ((datos_socio[i].DNI!= baja_socio) && (i=MAX_Socios-1))
{
}
}
}
/***********************************************************************************
Subprograma: ModificacionSocios Tipo: Procedimiento
Prerrequesitos: Opción 3 para ejecutar el subprograma
Objetivo: Modificar datos generales del socio(DNI,nombre y tipo)
************************************************************************************/
void ModificacionSocios()
{
}
/***********************************************************************************
Subprograma: ConsultaSocios Tipo: Procedimiento
Prerrequesitos: Opción 4 para ejecutar el subprograma
Objetivo: Pedir datos generales del socio(DNI,nombre y tipo)
************************************************************************************/
void ConsultaSocios(struct estructura_datos_socio *datos_socio,int contador)
{
for (contador=1;contador<MAX_Socios;contador++)
{
}
}
/***********************************************************************************
Subprograma: PagoMensual Tipo: Procedimiento
Prerrequesitos: Opción 5 para ejecutar el subprograma
Objetivo: Pedir datos generales del socio(DNI,nombre y tipo)
************************************************************************************/
void PagoMensual()
{
}
/***********************************************************************************
Subprograma: SociosNormales Tipo: Procedimiento
Prerrequesitos: Opción 6 para ejecutar el subprograma
Objetivo: Pedir el listado de socios normales
************************************************************************************/
void SociosNormales()
{
}
/***********************************************************************************
Subprograma: PagoMensual Tipo: Procedimiento
Prerrequesitos: Opción 7 para ejecutar el subprograma
Objetivo: Pedir el listado de socios jubilados
************************************************************************************/
void SociosJubilados()
{
}
/***********************************************************************************
Subprograma: SociosInfantiles Tipo: Procedimiento
Prerrequesitos: Opción 8 para ejecutar el subprograma
Objetivo: Pedir el listado de socios infantiles
************************************************************************************/
void SociosInfantiles()
{
}
/***********************************************************************************
Subprograma: PagoMensual Tipo: Procedimiento
Prerrequesitos: Opción 7 para ejecutar el subprograma
Objetivo: Pedir datos generales del socio(DNI,nombre y tipo)
************************************************************************************/
void GeneralSocios()
{
}


 
  




 Autor
 Autor
		


 En línea
									En línea
								




