Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Sara Montagna
email: sara.montagna@unibo.it
Ringraziamenti
1. Commenti
❖ Le righe di commento iniziano con il simbolo //
❖ I commenti vanno inseriti per documentare i programmi e migliorarne la leggibilità
❖ Commenti multilinea con /* …. */
Un semplice programma in C:
stampare una riga di testo
2. Direttiva #include
❖ E’ una istruzione per il preprocessore C
❖ Viene elaborata prima della compilazione
❖ La riga 2 dice di includere nel programma i contenuti del file header di input/output
Un semplice programma in C:
stampare una riga di testo
4. La funzione main
❖ L’utilizzo delle parentesi tonde dopo main sta ad indicare che main è un blocco del
programma che definisce una funzione
❖ Il corpo della funzione è incluso tra {…}
❖ Le funzioni possono restituire informazioni (output)
❖ La parola chiave int sta ad indicare che la funzione restituisce un valore intero
5. Istruzione di output
❖ L’esecuzione della riga 8 comporta la stampa della stringa di caratteri compresa tra virgolette
Librerie
Errori in esecuzione /
Inizio .o, .lib,
Errori logici
.so
Esecuzione
./hello Nessun errore
Esecuzione
corretta
Programma
“funzionante”
Errori
❖ Sequenza di
istruzioni (;)
❖ Assegnamento (=)
❖ Variabili
❖ Espressioni
❖ printf()
Un altro esempio con input da tastiera
Lettura di input da tastiera
#include <stdio.h>
int main( void )
{
printf("%d\n", 1*1);
printf("%d\n", 2*2);
printf("%d\n", 3*3);
printf("%d\n", 4*4);
printf("%d\n", 5*5);
printf("%d\n", 6*6);
printf("%d\n", 7*7);
printf("%d\n", 8*8);
printf("%d\n", 9*9);
printf("%d\n", 10*10);
return 0;
}
Stampare il quadrato degli interi da 1 a 10
Versione 2 (while) e 3 (for)
/* quadrati-while.c */
#include <stdio.h>
int main( void )
{
int i = 1;
while ( i <= 10 ) {
printf("%d\n", i*i);
i = i + 1;
}
return 0;
}
/* quadrati-for.c */
#include <stdio.h>
int main( void )
{
int i;
for (i=1; i <= 10; i=i+1) {
printf("%d\n", i*i);
}
return 0;
}
Parole riservate in C
❖ Il significato di alcuni termini è stato fissato da chi ha definito il
linguaggio C
❖ Non lo si può modificare
❖ Non è possibile usare le parole riservate per identificare elementi
definiti dall'utente
❖ Parole riservate in C (sono 32)
❖ auto break case char const continue default do
double else enum extern float for goto if int
long register return short signed sizeof static
struct switch typedef union unsigned void
volatile while
Indentazione del codice
#include <stdio.h>
int main( void ) { int i = 1; while ( i <= 10 )
{ printf("%d\n", i*i); i = i + 1; } return 0; }
❖ Cosa fa???
❖ Per una buona leggibilità del codice è importante
scrivere i programmi in modo ordinato e osservare le
regole di indentazione
❖ Dopo ogni ; si va a capo
❖ Dopo una { si va a capo e si inserisce un tab