Strumenti Utente

Strumenti Sito


fisica:informatica:201415:esercitazioni:esercitazione3

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
fisica:informatica:201415:esercitazioni:esercitazione3 [19/01/2015 alle 09:27 (11 anni fa)] – [Esercizio 1: Lunghezza dei tipi in C] Susanna Pelagattifisica:informatica:201415:esercitazioni:esercitazione3 [11/03/2015 alle 17:30 (10 anni fa)] (versione attuale) Susanna Pelagatti
Linea 1: Linea 1:
 ====== Esercitazione 3 ====== ====== Esercitazione 3 ======
  
 +Dove si esplorano alcune caratteristiche dei tipi di dato e del meccanismo di conversione C.
 ===== Esercizio 1: Lunghezza dei tipi in C ===== ===== Esercizio 1: Lunghezza dei tipi in C =====
 Data la seguente lista non esaustiva, dei nomi accettati per i tipi di base in C:  Data la seguente lista non esaustiva, dei nomi accettati per i tipi di base in C: 
Linea 16: Linea 17:
 double double
 long double  long double 
-long long double 
 </code> </code>
 utilzzate la funzione ''sizeof()'' per stampare la lunghezza in byte di ciascun tipo nella lista estendendo il seguente codice utilzzate la funzione ''sizeof()'' per stampare la lunghezza in byte di ciascun tipo nella lista estendendo il seguente codice
Linea 23: Linea 23:
  
 int main (void) { int main (void) {
-  printf("il tipo int e' lungo %d.\n",sizeof(int));+  printf("il tipo int e' lungo %lu.\n",sizeof(int));
   return 0;   return 0;
 } }
Linea 31: Linea 31:
 sizeof(short) <= sizeof (int) <= sizeof(long) sizeof(short) <= sizeof (int) <= sizeof(long)
 </code> </code>
 +
 +===== Esercizio 2: L'intervallo di rappresentazione dei tipi ''int''=====
 +Nel file ''limits.h'' sono contenute le macro che forniscono i massimi e minimi numeri rappresentabli da ogni tipo C, in particolare:
 +<code>
 +SHRT_MIN SHRT_MAX
 +INT_MIN INT_MAX
 +LONG_MIN LONG_MAX
 +</code>
 +sono i limiti inferiori e superiori per gli interi con segno dei vari tipi base. Scrivere un programma C che li stampa e verificare che corrispondono ai valori dell'intervallo di rappresentabilita'
 +<code>
 +(-2^{n-1}, 2^{n-1} -1)
 +</code>
 +dove ''n'' e' il numero di bit utilizzati da ciascuna rappresentazione.
 +
 +===== Esercizio 3: I tipi ''unsigned'' =====
 +Scrivere un programma C che legge un intero ''N'' senza segno da standard input e lo stampa sullo standard output in notazione decimale, ottale ed esadecimale utilizzando la funzione ''printf()''.
 +
 +Estendere il programma in modo che stampi anche la rappresentazione binaria di ''N''.
 +
 +===== Esercizio 4: Codici ASCII =====
 +Scrivere un programma C che stampa i codici ASCII di tutte le lettere minuscole e maiuscole.
 +
 + 
 +===== Esercizio 5: Trasformare in maiuscole =====
 +Scrivere un programma C che legge in input un carattere minuscolo e lo trasforma in un carattere maiuscolo. Controllare che il carattere letto sia effettivamente una lettera minuscola.
 +
 +===== Esercizio 6: Esplorare i reali.... =====
 +''float.h'' e' il file che descrive la rappresentazione dei reali in una particolare implementazione C. Le principali costanti sono descritte 
 +[[http://www.tutorialspoint.com/c_standard_library/float_h.htm|qui]].
 +
 +Scrivere un programma C che stampa i limiti di rappresentazione dei principali tipi reali ed alcune delle costanti di float.h relative alla lunghezza della rappresentazione (lunghezza mantissa, esponente etc).
fisica/informatica/201415/esercitazioni/esercitazione3.1421659664.txt.gz · Ultima modifica: 19/01/2015 alle 09:27 (11 anni fa) da Susanna Pelagatti

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki