Di seguito è scritto il codice, ovviamente da quello che si evince il codice non è completo, e volevo sapere se fino a qui c'è da migliorare qualcosa, e se il ciclo while con valore sentinella è giusto, in esecuzione non fà quello che deve fare.
Sto avendo delle difficoltà, spero in un'aiuto.
:thanks:
Sto avendo delle difficoltà, spero in un'aiuto.
:thanks:
C:
/*
* libri.c
*
* Created on: 22 feb 2019
* Author: Giovanni Montanaro
*/
/*
La libreria "Buona Lettura" gestisce l'approvvigionamento e la vendita dei libri
mediante una tabella che per ogni libro riporta: codice, titolo, autori, numero copie disponibili,
numero copie minimo di scorta. I clienti della libreria effettuano le loro richieste inviando il
codice del libro e il numero di cope da ordinare.
Progettare una soluzione al problema di gestione delle richieste che fornisca in output:
° per ogni richiesta trattata un messaggio di richiesta accettata o rifiutata;
° il codice del libro, il titolo e gli autori della richiesta evasa con il maggior numero di copie;
° i codici di tutti i libri le cui copie disponibili sono in esaurimento e la quantità da riordinare per
mantenere il numero minimo di scorta;
° la tabella aggiornata.
*/
#include <stdio.h>
#include <stdlib.h>
typedef struct {
int codice[2];
char titolo[10];
char autore [10];
int numero_copie_disponibili;
int numero_copie_di_scorta;
}libro;
void inserisci_dettagli(libro *libreria);
void gestione_richieste(libro libreria);
void stampa_dettagli(libro libreria);
int main(int argc, char *argv[]){
libro libro_t;
int numero_libri;
int i;
i=0;
//ricevi il primo libro dell'utente
printf("\t\t\n Inserisci il numero di Libri, quando hai finito digita -1\n\n");
scanf("%d", &numero_libri);
while( numero_libri != -1){ //sentinella, l'utente inserisce di volta quanti libri gli servono, con -1 esce dal ciclo e stampa i risultati che gli servono
i++;
//ricevi il successivo libro dall'utente
printf("\t\t\n Inserisci il primo libro e in seguito uno alla volta tutti gli altri, quando hai finito digita -1\n\n");
scanf("%d", &numero_libri);
inserisci_dettagli(&libro_t);
}
printf("\t\t\n\n Tabella Libri Aggiornata \n\n");
stampa_dettagli(libro_t);
return 0;
}
void inserisci_dettagli(libro*libreria){
printf("\n Inserisci codice Libro --> \n");
scanf("%d", libreria->codice);
printf("\n\n Inserisci Titolo --> ");
scanf("%s", libreria->titolo);
printf("\n\n Inserisci L'autore' --> ");
scanf("%s", libreria->autore);
printf("\n\n Disponibilita --> ");
scanf("%d", &libreria->numero_copie_disponibili);
printf("\n\n Scorta --> ");
scanf("%d", &libreria->numero_copie_di_scorta);
}
void gestione_richieste(libro libreria){
void stampa_dettagli(libro libreria){
}
Ultima modifica da un moderatore: