La funzione printf() in C

La funzione printf del linguaggio C mi permette di stampare qualcosa sullo schermo. La sintessi è la seguente:

printf("testo", espressione);

Il testo tra doppi apici è una stringa da visualizzare in output a video. Può contenere anche specificatori di formato.

L'espressione è una costante o una variabile da stampare a video.

Nota. La funzione si trova nella libreria stdio.h che, pertanto, deve essere caricata con la direttiva #include all'inizio del programma c. In caso contrario printf non funziona.

Un esempio pratico

Esempio 1

Per stampare hello world sullo schermo

#include <stdio.ht>
int main() {
printf(" Hello World! ");
return 0;
}

Il risultato in output è

Hello World

Esempio 2

Per stampare il contenuto di una variabile devo indicare nel testo uno specificatore di formato.

#include <stdio.ht>
int main() {
int anno=2020;
printf("Quest'anno è il %d", anno);
return 0;
}

Devo aggiungere il nome della variabile come secondo parametro della funzione printf.

Il risultato a video è

Quest'anno è il 2020

Esistono diversi specificatori di formato.

E' importante utilizzare il formato giusto per il tipo di dato che contiene la variabile.

Gli specificatori di formato

Gli specificatori di formato mi permettono di stampare il contenuto di una variabile con printf.

Cominciano tutti con il simbolo percentuale.

Specificatori di formato Descrizione
%c stampa un carattere singolo (char)
%d oppure %i stampa un intero decimale con segno (int)
%e oppure %E stampa in formato esponenziale (float o double)
%f stampa un numero reale con segno (float o double)
%[precisione]f float o double per il reale con segno in cui si definisce il formato (es. %5.2f per stampare un numero di 5 cifre, compreso il punto, di cui 2 cifre decimali dopo la virgola.
%g oppure %G stampa un numero float o double
%o stampa valori in base 8 senza segno (int)
%p stampa le variabili puntatore (pointer)
%s stampa le stringhe di caratteri ossia gli array char
%u stampa intero senza segno (int)
%x oppure %X stampa valori in base 16 senza segno (int)
%% stampa a video il carattere percentuale (%)

E' importante utilizzare lo specificatore di formato giusto per il tipo di variabile. In caso contrario, il dato verrà stampato in modo errato.

Un esempio pratico

In questo codice uso lo specificatore di formato %f per stampare un numero reale con virgola mobile (float).

#include <stdio.h>
int main()
{
float prezzo;
prezzo=15.9;
printf("Il prezzo è %f ", prezzo);
return 0;
}

Il risultato in output è

Il prezzo è 15.900000

Esempio 2

In questo codice formatto il numero in cinque cifre con due posizioni decimali tramite la precisione %5.2.

#include <stdio.h>
int main()
{
float prezzo;
prezzo=15.9;
printf("Il prezzo è %5.2f ", prezzo);
return 0;
}

Il risultato in output è

Il prezzo è 15.90

Le sequenze di escape

Le sequenze di escape sono caratteri speciali mi permettono di formattare il testo. Vanno inserite nel testo della funzione printf.

Cominciano tutte con il carattere backslash \

Sequenza di escape Descrizione
\n nuova riga (new line) ossia va a capo
\t inserisce uno spazio di tabulazione (tab)
\a emette un segnale sonoro (alert)
\f crea nuova pagina (form feed)
\r effettua un ritorno a capo sulla stessa riga
\v inserisce una tabulazione verticale (tab)
\b cancella l'ultimo carattere (backspace)
\\ stampa il carattere backslash
\’ stampa il carattere dell'apice singolo
\” stampa il carattere dei doppi apici,
\? stampa il punto interrogativo
\0 definisce la fine stringa
\<NumOttale> scrive un numero ottale
\<NumEsadecimale> scrive un numero esadecimale

Un esempio pratico

#include <stdio.ht>
int main() {
printf(" Hello \n World! ");
return 0;
}

Il risultato in output è

Hello
World

La sequenza di escape \n è stata sostituita con un ritorno a capo.

E così via.

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base

Libri di approfondimento

Il linguaggio C

  1. Un esempio pratico
  2. Come compilare il programma

Impariamo a programmare

  1. Come dichiarare le variabili
  2. Gli operatori
  3. La libreria stdio.h
  4. Come visualizzare in output testo e variabili
  5. Come usare le stringhe
  6. L'istruzione IF
  7. Le strutture cicliche
  8. Le funzioni
  9. Gli array