
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.
ARRAY DI INTERI
Un array è una collezione finita di n variabili dello stesso tipo, ognuna identificata da unindice, che va da 0 a n-1. Si possono definire due dimensione per ogni array:
- La dimensione fisica (n), che è decisa in maniera statica al momento della definizione della variabile di tipo array; quindi un array è formato da queste n celle di memoria.
- Non è però detto che ognuna di queste cella debba per forza essere occupata, perciò la dimensione logica di un array può essere inferiore alla sua dimensione fisica.
Per predisporre spazio in memoria per un array di interi, si può agire in diversi modi:
1) int arrayNum[4];
2) int* arrayNum; (Questa notazione la vedremo più avanti)
1) int arrayNum[] = {1,2,3,4};
2) Dopo la dichiarazione, scrivere arrayNum[0] = 1; arrayNum[1] = 2; ecc…
Il tipo stringa non esiste in C, e questa è una grave mancanza, ma si può ovviare a questa mancanza costruendosi da soli questo tipo di formato, utilizzando gli array di caratteri. Le stringhe si possono definire e riempire in questo modo:
1) char nome[20];
2) char *nome; nome = “Matteo”;
3) char nome[] = “Matteo”;
4) Dopo la dichiarazione, nome[0] = “M”; nome[1] = “a”; ecc…
char nome[6];
nome[0] = “M”;
nome[1] = “a”;
nome[2] = “r”;
nome[3] = “i”;
nome[4] = “o”;
nome[5] = “\0”;


- strlen(const char*): ritorna la lunghezza della stringa;
- strcmp(const char*, const char*): ritorna 0 se le stringhe sono uguali, un valore >0 se la prima stringa segue la seconda, o un valore <0 se la prima stringa precede la seconda;
- strcpy(char*, const char*); copia una stringa in un’altra.
Una struttura è una collezione finita di dati anche eterogenei (non necessariamente dello stesso tipo), ognuna identificata da un nome; si definisce così:



persona arrayPersone[4]; Consiglio: per il nome del primo, arrayPersone[0].nome ecc…
array_e_strutture.zip |
Dottore in Ingegneria Informatica.
Contattatemi sui miei Social Network e sul mio Sito personale per collaborazioni, proposte di lavoro e altre informazioni!