Untitled

                Never    
C
       
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

typedef struct Alumno{
    int legajoalumno;
    char nombreyapellido;
    int telefono;
    int fechadevolucion;
}TAlumno;

typedef struct Biblioteca{
    int isbn;
    char titulo[50];
    char autor[50];
    int cantejemplares;
    TAlumno historialprestamo[50];
}TBiblioteca;

typedef struct Retirados{
    TAlumno datosalumno;
    TBiblioteca datoslibro;
    int fecharetiro;
}TRetirados;

void CargarLibro(TBiblioteca VectorLibros[], int *contador);
void MostrarLibros(TBiblioteca VectorLibros[], int contador);
void CargarPrestamo(TRetirados VectorPrestamos[], TBiblioteca VectorLibros[], int *contadorprestamos, int contadorlibros);
void Disponibilidad(TRetirados vectorprestamo[], int contadorprestamo, TBiblioteca vectorlibros[], int contadorlibros, int *posicion);
void MostrarRetirados(TRetirados vectorprestamo[], int contadorprestamo);

int main()
{
    int menu=0, continuar=1;
    TAlumno VectorAlumnos[100];
    TBiblioteca VectorLibros[100];
    TRetirados VectorRetiros[100];
    int contadorlibros=0, contadorprestamos=0;
    do{
        printf("1.- Nuevo libro\n");
        printf("2.- Nuevo prestamo\n");
        printf("3.- Mostrar libros\n");
        printf("4.- Mostrar historial de prestamos\n");
        printf("5.- Devolucion de libro\n");
        printf("6.- Listado de morosos\n");
        printf("0.- Salir\n");
        scanf(" %d",&menu);
        switch(menu){
        case 0:
            return 1;
        break;
        case 1:
            CargarLibro(VectorLibros, &contadorlibros);
            system("pause");
            system("cls");
        break;
        case 2:
            CargarPrestamo(VectorRetiros, VectorLibros, &contadorprestamos, contadorlibros);
            system("pause");
            system("cls");
        break;
        case 3:
            MostrarLibros(VectorLibros, contadorlibros);
            system("pause");
            system("cls");
        break;
        case 4:
            MostrarRetirados(VectorRetiros, contadorprestamos);
            system("pause");
            system("cls");
        break;
        case 5:
            printf("opcion 5\n");
            system("pause");
            system("cls");
        break;
        case 6:
            printf("opcion 6\n");
            system("pause");
            system("cls");
        break;
        default:
            printf("La opcion ingresada es incorrecta\n");
            system("pause");
            system("cls");
        break;
        }
    }while(continuar!=0);
}

void CargarLibro(TBiblioteca VectorLibros[], int *contador){
    char aux='s';
    do{
        printf("----FUNCION CARGA LIBRO NRO %d----\n",*contador+1);
        printf("Ingrese el ISBN:\n");
        scanf(" %d", &VectorLibros[*contador].isbn);
        printf("Ingrese el titulo del libro:\n");
        scanf(" %[^\n]s", &VectorLibros[*contador].titulo);
        printf("Ingrese el autor del libro:\n");
        scanf(" %[^\n]s", &VectorLibros[*contador].autor);
        printf("Ingrese la cantidad de ejemplares que tiene la biblioteca:\n");
        scanf(" %d", &VectorLibros[*contador].cantejemplares);
        (*contador)++;
        printf("Desea cargar otro libro? <s> si - <n> no ");
        scanf(" %c", &aux);
    }while(aux!='n');
}

void MostrarLibros(TBiblioteca VectorLibros[], int contador){
    for(int i=0; i<contador; i++){
        printf("---LIBRO NRO %d---\n",i+1);
        printf("ISBN: %d\n",VectorLibros[i].isbn);
        printf("Titulo: %s\n",VectorLibros[i].titulo);
        printf("Autor: %s\n",VectorLibros[i].autor);
        printf("Cantidad de ejemplares en biblioteca: %d\n",VectorLibros[i].cantejemplares);
    }
}

void CargarPrestamo(TRetirados VectorPrestamos[], TBiblioteca VectorLibros[], int *contadorprestamos, int contadorlibros){
    char aux='s';
        do{
            int posicion=0;
            printf("---FUNCION CARGAR PRESTAMOS---\n");
            printf("Ingrese el ISBN: ");
            scanf(" %d",&VectorPrestamos[*contadorprestamos].datoslibro.isbn);
            posicion=buscar(VectorPrestamos, *contadorprestamos, VectorLibros, contadorlibros);
            //Disponibilidad(VectorPrestamos,contadorprestamos,VectorLibros,contadorlibros,&posicion);
            if((0<=posicion) && (VectorLibros[posicion].cantejemplares>0)){
                printf("Ingrese el nombre y apellido del alumno:");
                scanf(" %[^\n]s",&VectorPrestamos[*contadorprestamos].datosalumno.nombreyapellido);
                printf("Ingrese el numero de legajo: ");
                scanf(" %d",&VectorPrestamos[*contadorprestamos].datosalumno.legajoalumno);
                printf("Ingrese el numero de telefono: ");
                scanf(" %d",&VectorPrestamos[*contadorprestamos].datosalumno.telefono);
                printf("Ingrese la fecha de retiro(AAAAMMDD) : ");
                scanf(" %d",&VectorPrestamos[*contadorprestamos].fecharetiro);
                printf("Ingrese la fecha de devolucion(AAAAMMDD) : ");
                scanf(" %d",&VectorPrestamos[*contadorprestamos].datosalumno.fechadevolucion);
                (*contadorprestamos)++;
            }else{
                printf("El libro no esta registrado o no hay stock.\n");
            }
            printf("Desea cargar otro pedido? <s> si - <n> no: ");
            scanf(" %c", &aux);
        }while(aux!='n');
}
/**
void Disponibilidad(TRetirados vectorprestamo[], int contadorprestamo, TBiblioteca vectorlibros[], int contadorlibros, int *posicion){
    int aux=0;
        for(int i=0; i<contadorlibros; i++){
            if(vectorprestamo[contadorprestamo].datoslibro.isbn == vectorlibros[i].isbn){
                *posicion=i;
            }else{
                *posicion=-1;
            }
        }
}
**/
void MostrarRetirados(TRetirados vectorprestamo[], int contadorprestamo){
    for(int i=0; i<contadorprestamo; i++){
        printf("---PRESTAMO NRO %d---\n",i+1);
        printf("ISBN: %d\n",vectorprestamo[i].datoslibro.isbn);
        printf("Autor: %s\n",vectorprestamo[i].datoslibro.autor);
        printf("Alumno: %s\n",vectorprestamo[i].datosalumno.nombreyapellido);
        printf("Legajo: %d\n",vectorprestamo[i].datosalumno.legajoalumno);
        printf("Telefono: %d\n",vectorprestamo[i].datosalumno.telefono);
    }
}

int buscar(TRetirados vectorprestamo[], int contadorprestamo, TBiblioteca vectorlibros[], int contadorlibros){
    for(int i=0; i<contadorlibros; i++){
        if(vectorprestamo[contadorprestamo].datoslibro.isbn == vectorlibros[i].isbn)
            return i;
    }
    return -1;
}

Raw Text