La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Introduzione al linguaggio C Elementi di Informatica A.A. 2004/05 13/10/2004.

Presentazioni simili


Presentazione sul tema: "Introduzione al linguaggio C Elementi di Informatica A.A. 2004/05 13/10/2004."— Transcript della presentazione:

1 Introduzione al linguaggio C Elementi di Informatica A.A. 2004/05 13/10/2004

2 © Fabio Forno Politecnico di Torino Hello World! #include main() { printf(hello world!\n); } Direttive preprocessore Programma

3 © Fabio Forno Politecnico di Torino Hello World! #include main() { printf(hello world!\n); } Punto di ingresso

4 © Fabio Forno Politecnico di Torino Hello World! #include main() { printf(hello world!\n); } Blocco di codice

5 © Fabio Forno Politecnico di Torino Hello World! #include main() { printf(hello world!\n); } istruzione

6 © Fabio Forno Politecnico di Torino Compilazione Pre- processore Pre- processore Compilatore Linker applicazione librerie file oggetto sorgente Sorgente modificato header

7 © Fabio Forno Politecnico di Torino Variabili #include main() { int a; int c,b=1; } Dichiarazione di una variabile

8 © Fabio Forno Politecnico di Torino Variabili #include main() { int a; int c,b=1; } Tipo

9 © Fabio Forno Politecnico di Torino Variabili #include main() { int a; int c,b=1; } nome

10 © Fabio Forno Politecnico di Torino Variabili #include main() { int a; int c,b=1; } inizializzazione

11 © Fabio Forno Politecnico di Torino Variabili: significato RAM int a=10; a

12 © Fabio Forno Politecnico di Torino Tipi di variabili Interi int: dimensione variabile (2 byte su PC a 16bit, 4 byte su PC a 32) long: 4 byte Numeri in virgola mobile float: 4 byte double: 8 byte Caratteri char: 1 byte (in realtà possono essere utilizzati come numeri)

13 © Fabio Forno Politecnico di Torino Esercizio Sapendo che gli interi sono rappresentati in modulo e segno, calcolare il valore massimo e minimo che può essere contenuto in ciascun tipo di variabile Verificare le condizioni di overflow mediante un programma in C Verficare le condizioni di underflow mediante un programma C

14 © Fabio Forno Politecnico di Torino Tabella riassuntiva tipi charIntero, 1 Bytechar i = 10; shortIntero, 2 Byteshort i = 2321; intIntero, 2-4 Byteint i = -2322; longIntero, 4 Bytelong i = ; floatNumero con virgola, 4 Byte float i = 2.34; doubleNumero con virgola, 8 byte double i = -1.2e-20;

15 © Fabio Forno Politecnico di Torino Modificatore unsigned La parola chiave unsigned indica che il tipo intero deve essere senza segno Esempi char i; /* range (-2 7, ) */ unsigned char i; /* range (0, ) */ = -93 (signed) = 163 (unsigned)

16 © Fabio Forno Politecnico di Torino Costanti #include #define PI main() { int a; int c, float pi=PI; } definizione di una costante

17 © Fabio Forno Politecnico di Torino Costanti #include #define PI main() { int a; int c, float pi=PI; } Utilizzo di una costante

18 © Fabio Forno Politecnico di Torino Espressioni aritmetiche main() { int a,b,c; a = 10; b = a+1; c = a*(b-10); c = b/a; c = a/b; } Assegnamenti

19 © Fabio Forno Politecnico di Torino Espressioni ed assegnamenti main() { int a,b,c; a = 10; b = a+1; c = a*(b-10); c = b/a; c = a/b; } Espressione aritmetica

20 © Fabio Forno Politecnico di Torino Assegnamenti Cosa succede quando si assegnano fra di loro variabili di tipo differente? dim(dest) > dim(orig) Ok, nessun problema dim(dest) < dim(orig) Troncamento! int a=10; long b; float c=23.5; b = a; /* ok */ b = ; a = b; /* troncamento! */ b = c; /* troncamento! */ C = a; /* ok */

21 © Fabio Forno Politecnico di Torino Espressioni di confronto Operatori aritmetici di confronto: == != Se il confronto è vero il risultato è 1 Se è falso il risultato è 0 int r,a=10; int b=2; float c=23.5; r = a < b; /* r vale 0*/ r = a != b; /* r vale 1 */ r = a < c < b; /* r vale 1 */

22 © Fabio Forno Politecnico di Torino Esercizio Discutere i risultati dellesempio precedente Scrivere il codice C che esegue la media aritmetica di 4 variabili intere e discutere il risultato Fare un programma in cui si assegna 18,000,000 ad un float, lo si incrementa di uno e discutere del risultato

23 © Fabio Forno Politecnico di Torino printf La funzione printf stampa stringhe e numeri sullo standard output printf(formato, …); Esempio: printf(I valori sono %d e %f\n, 10, 2.3); Risultato: I valori sono 10 e

24 © Fabio Forno Politecnico di Torino printf Il primo parametro è la stringa di formato Ogni %d e %f deve avere un parametro corrispondente di seguito %c vuole un carattere (char) %d vuole un intero (int) %ld vuole un intero (long) %f vuole un numero con virgola (float o double)

25 © Fabio Forno Politecnico di Torino scanf La funzione scanf permettere di leggere dati da tastiera eseguendo le corrette conversioni scanf(formato, …); Esempio: scanf(%d, &a); Risultato Il programma si blocca in attesa che venga inserito da tastiera un intero Appena premuto invio il valore inserito viene copiato dentro a

26 © Fabio Forno Politecnico di Torino scanf Il primo parametro è sempre una stringa di formato I parametri successivi sono determinati dagli indicatori di tipo %c legge un char %d legge un intero %f legge un float %lf legge un double Ogni parametro deve essere preceduto dal simbolo & Questo indica lindirizzo della variabile, perché scanf deve sapere dove andare a scrivere il valore letto


Scaricare ppt "Introduzione al linguaggio C Elementi di Informatica A.A. 2004/05 13/10/2004."

Presentazioni simili


Annunci Google