La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

La funzione printf consente di effettuare la stampa a video formattata. Sintassi: printf ( stringa_formato, arg0, arg1, … ); La stringa che controlla il.

Presentazioni simili


Presentazione sul tema: "La funzione printf consente di effettuare la stampa a video formattata. Sintassi: printf ( stringa_formato, arg0, arg1, … ); La stringa che controlla il."— Transcript della presentazione:

1 La funzione printf consente di effettuare la stampa a video formattata. Sintassi: printf ( stringa_formato, arg0, arg1, … ); La stringa che controlla il formato (stringa_formato) contiene i comuni caratteri che compongono il messaggio testuale e una o più specifica di conversione per ogni variabile di cui stampare il valore. Le specifiche di conversione iniziano con il carattere % e terminano con un carattere di conversione tra i seguenti: - %d, %i : decimale - %f : float(virgola mobile) - %o : ottale - %u : intero senza segno - %x : esadecimale - %s : stringa - %e : notaz.esponenziale - %c : carattere In mezzo tra % e carattere di conversione si può trovare: - un segno meno : indica lallineamento del testo a sinistra - un numero : indica lampiezza minima del campo riservato al valore - un punto : separa lampiezza del campo da un altro numero che indica lampiezza della precisione (numero max di caratteri da stampare per le stringhe e numero max di cifre decimali per un float)

2 Esempio: printf ( %-8.3f %12s %4d %.5s, v1, v2, v4, v4 ); v1 è stampata come float allineato a sinistra con ampiezza minima del campo pari 8 celle video e al massimo 3 cifre decimali v2 è stampata come stringa allineata a destra con ampiezza minima del campo pari 12 celle video v3 è stampata come decimale allineato a destra con ampiezza minima del campo pari 4 celle video v4 è stampata come stringa allineata a destra con ampiezza minima del campo non dichiarata ma di cui si stampano al massimo 5 caratteri

3 La funzione scanf consente di acquisire valori formattati in input. Sintassi: scanf ( stringa_formato, arg0, arg1, … ); La stringa che controlla il formato (stringa_formato) è analoga a quella della printf e le medesime sono le specifiche e caratteri di conversione. Scanf legge i caratteri dallo standard input e li memorizza negli argomenti che seguono la stringa di formato. Tali argomenti devono essere puntatori (iniziando con &, vettori a parte), cioè indirizzi di variabili in memoria. Scanf si ferma quando ha esaurito la sua stringa di formato o se trova una inconsistenza. Scanf ritorna il numero di oggetti letti oppure un EOF al termine del file o se lelemento letto contrasta con la specifica di controllo. Esempio: scanf ( %d %f %s, &i, &j, a ); dove i è un intero decimale, j un float e a un vettore di caratteri (stringa)

4 Decimale: - notazione posizionale in base 10, usata dagli uomini - 10 cifre per rappresentare ogni numero: 1,2,3,4,5,6,7,8,9 - cifre più significative a sinistra, le meno significative a destra - esempio di rappresentazione: 435 => 4× × × con (n) cifre si possono rappresentare (10^n) numeri decimali, da 0 a (10^n-1) Binario: - notazione posizionale in base 2, usata nei calcolatori - 2 cifre per rappresentare ogni numero: 0,1 - cifre più significative a sinistra, le meno significative a destra - esempio di rappresentazione: => 1×2 7 +0×2 6 +0×2 5 +1×2 4 +1×2 3 +1×2 2 +0×2 1 +1×2 0 - con (n) cifre si possono rappresentare (2^n) numeri decimali, da 0 a (2^n-1) - per passare da binario a decimale basta fare la somma delle potenze - per passare da decimale a binario si fa la divisione ripetuta per 2

5 Esempio di conversione decimale > binario, convertiamo 275 Divisione Quoziente Resto Codifica 275 / / / / / / / / / => 275 in decimale corrisponde a in binario

6 Esadecimale: - migliora il sistema binario che usa troppe cifre per rappresentare numeri grandi - conversione da binario a esadecimale è molto semplice - notazione posizionale in base cifre per rappresentare ogni numero: 1,2,3,4,5,6,7,8,9,A,B,C,D,E,F - 1,2,3…,9 in esadecimale corrispondono agli stessi decimali, mentre A,B,C,D,E,F corrispondono ai decimali 10,11,12,13,14,15 - cifre più significative a sinistra, le meno significative a destra - esempio di rappresentazione: C38F => 12× × × × con (n) cifre si possono rappresentare (16^n) numeri decimali, da 0 a (16^n-1) - per passare da binario a decimale basta fare la somma delle potenze - per passare da decimale a binario si fa la divisione ripetuta per 16 Ottale: - discorso analogo ai precedenti, sia per la notazione che per i metodi di conversione, solo che la base qui è 8.

7 # include int main(){ int valore,scelta; for(;;){ printf("\n\t0 per uscire \n"); printf("\t1 Converte decimale/esadecimale \n"); printf("\t2 Converte esadecimale/decimale \n"); scanf("%d",&scelta); if (scelta == 0) break; if (scelta == 1){ printf("\tInserisci un numero in base 10\n"); scanf("%d",&valore); printf("\tIn esadecimale: \n"); printf("\t%x\n",valore); } if (scelta == 2){ printf("\tInserisci un numero in base 16\n"); scanf("%x",&valore); printf("\tIn base 10:\n"); printf("\t%d\n",valore); }


Scaricare ppt "La funzione printf consente di effettuare la stampa a video formattata. Sintassi: printf ( stringa_formato, arg0, arg1, … ); La stringa che controlla il."

Presentazioni simili


Annunci Google