DECIMA ESERCITAZIONE

Obiettivo: esercizio d'esame sulle liste

Per lo svolgimento di un esame scritto di Fondamenti di Informatica, un docente prepara una lista degli studenti iscritti. La lista è rappresentata mediante una lista concatenata. Ogni nodo della lista contiene le seguenti informazioni relative ad uno studente:

Gli studenti vengono fatti entrare nell'aula dello scritto seguendo la lista. La lista viene modificata assegnando ad ogni studente presente una posizione nell'aula (es. 2D = quarto posto della seconda fila). Se uno studente iscritto e' assente, come numero di fila e posizione fila si assegna 0.

  1. Definire i tipi di dato adeguati a risolvere i problemi di cui ai successivi punti 2) e 3).
  2. Scrivere una funzione EliminaAssenti che, ricevendo come parametro una lista di studenti, trattata come sopra descritto, elimini da essa tutti gli studenti che risultano assenti.
  3. Scrivere una funzione VerificaAdiacenti che, ricevendo come parametri una lista di studenti, trattata come sopra descritto, e due numeri di matricola, stampi un messaggio di warning se gli studenti corrispondenti sono contigui.

Due studenti sono contigui se

Ad esempio, 2A e 2B sono contigui; 2A e 2C no; 4C e 3C sono contigui; 4C e 3D no

Il messaggio di warning è del tipo "ATTENZIONE: STUDENTI CONTIGUI".

(Soluzione in liststud.c)