INDICE
Parte 1: Introduzione.
Parte 2: Fasi, variabili, operatori e software.
Parte 3: Tipi di dato, direttive e primo programma.
Parte 4: Tipi di formato, prinft e scanf.
Parte 5: Istruzioni condizionali e di iterazione.
Parte 6: Funzioni e progetti su più file.
Parte 7: Puntatori e passaggio dei parametri.
Parte 8: Array, stringhe e strutture.
Parte 9: Gestione file: file di testo.
Parte 10: Gestione file: file binari.
Parte 11: Allocazione dinamica della memoria.
Parte 12: Creare ed utilizzare le liste nel C.
Parte 13: Algoritmi di ordinamento di Array.
Parte 14: Esercizi sul linguaggio C.
|
L’operatore ” . ” ha la precedenza sull’operatore ” * “, per cui sono necessarie le parentesi tonde! Ossia bisogna scrivere così:
L’operatore ” -> ” permette di velocizzare la scrittura di prima:
|
- Il valore di questo elemento (che sia un intero, un array o una struttura);
- Un puntatore all’elemento successivo della lista.
Ovviamente l’ultimo elemento della lista ha un puntatore a NULL.
Vi faccio quindi adesso vedere come si implementa il C il tipo lista:
Le principali operazioni che si possono compiere su una lista sono:
- Inserire un elemento in testa;
- Restituire il primo elemento della lista;
- Restituisce l’elemento successivo della lista;
- Creare una lista vuota.
Per riempire una lista, quindi, dovete creare prima una lista vuota, poi inserite il primo valore e indirizzate quindi il puntatore all’elemento successivo:
|
Prima bisogna un attimo definire, per comodità, il tipo Element, in modo da rendere ancora più generali le funzioniprimitive che adesso andremo a vedere; il tipo Element si definisce in base ovviamente alle necessità, ovvero in base al tipo di dato da usare.
|
La funzione cons() si occupa di inserire un elemento in testa alla lista, ed è così definita:
list cons(Element, list);
La funzione head() restituisce l’elemento in testa alla lista, ed è così definita:
Element head(list);
La funzione tail() restituisce invece la coda della lista, ed è così definita:
list tail(list);
La funzione emptyList() si occupa di creare una nuova lista vuota, mentre la funzione empty() si occupa di controllare se una lista è vuota o no, e sono così definite:
|
|
main.c |
list.h |
list.c
esercizioliste.zip |
Dottore in Ingegneria Informatica.
Contattatemi sui miei Social Network e sul mio Sito personale per collaborazioni, proposte di lavoro e altre informazioni!