Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CORSO DI LAUREA IN INGEGNERIA INDUSTRIALE
- FONDAMENTI DI INFORMATICA (F-O)
- a.a. 2016/2017
- SECONDA PROVA IN ITINERE
- Si vuole sviluppare un software in ANSI C per la gestione dei laureandi (hanno superato tutti gli esami) di una sessione di laurea per una dato corso di laurea con 20 matere (suggerimento: usare il define per stabilire il numero di materie del corso cosicché durante le varie prove possa essere usato un numero inferiore ed evitare l’inserimento di troppi valori).
- Nello specifico per ogni laureando (struct laureando) si deve memorizzare nome, cognome, matricola e i 20 esami che hanno sostenuto. Per memorizzare gli esami per un laureando usare un array di un nuovo tipo esame, dove esame è un record che contiene nome dell’insegnamento, crediti dell’insegnamento e voto ottenuto (da 18 a 30) dallo studente per l’insegnamento.
- Di seguito la lista di funzioni da implementare, che andranno utilizzate tutte nel main.
- 1) Scrivere un funzione che permetta l’inserimento di un nuovo laureando. Il prototipo della funzione è il seguente:
- laureando* inserisci_laureando(laureando* elenco, int * dim_elenco);
- La funzione:
- riceve in ingresso un vettore di laureandi (elenco), e la sua dimensione (tramite riferimento);
- modifica la dimensione del vettore per ospitare un nuovo laureando e chiede all’utente di inserire i dati per tale laureando;
- restituisce il nuovo vettore e la sua dimensione (tramite riferimento).
- 2) Scrivere un funzione che permetta la ricerca di un laureando in un elenco di laureandi. Il prototipo della funzione è il seguente:
- laureando ricerca_laureando(laureando* elenco, int dim_elenco);
- La funzione:
- riceve in ingresso un vettore di laureandi (elenco), e la sua dimensione;
- chiede all’utente di inserire il numero di matricola di un laureando (per confrontare numeri di matricola usare la funzione strcmp della libreria string.h – discussa a lezione);
- restituisce tutte le informazioni del laureando (nome, cognome, matricola e esami) in una struct di tipo laureando.
- 3) Funzione per calcolare il voto più comune ricevuto da tutti gli studenti in tutte le materie.
- int voti_comune(laureando *elenco, int dim_elenco);
- 4) Funzione per calcolare la media pesata (in base al numero di crediti) di un dato studente.
- float media_pesata (laureando *elenco, int dim_elenco, char *matricola);
- 5) Funzione per calcolare la media dei voti ottenuti in un dato insegnamento.
- float media_insegnamento(laureando *elenco, int dim_elenco, char *nome_insegnamento);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement