Input & Output
-
Input
L'istruzione per acquisire dati dalla tastiera (input) si indica in C con scanf:
Esempioscanf("%d", &num);L'esempio fa entrare da tastiera un numero intero e lo assegna alla variabile di nome num.
L'istruzione ha due argomenti scritti tra parentesi tonde e separati dalla virgola:- "%d": indica il formato, il tipo della variabile che si deve acquisire.
- &num: è il nome della variabile a cui deve essere assegnato il valore.
I formati sono rappresentati con sequenze di caratteri, chiamati specificatori di formato, essi iniziano con il carattere %, seguito da:
Formato Viene stampato %d, %i numero intero decimale %f numero in virgola mobile(float e double) %c carattere %s stringa di caratteri L'operazione di lettura con scanf, permette di leggere con un'unica operazione tuti i caratteri digitati fino alla pressione del tasto invio. Se vogliamo leggere più dati si devono indicare, nelle parentesi, tanti specificatori di formato e tante variabili quanti sono i dati da inserire:
Esempioscanf("%d %d", &num1, &num2);L'utente può inserire i dati richiesti sulla stessa riga separandoli con la barra spaziatrice o con il ritorno a capo.
-
Output
L'istruzione per visualizzare dati e messaggi sul video (output) si indica in C con printf:Esempioprintf("%d", risul);L'esempio scrive sul video il valore numerico intero della variabile, scritta dopo la virgola, risul.
L'istruzione printf utilizza gli stessi specificatori di formato visti per scanf.Tutti i messaggi che si vogliono far stampare a video, devono essere inseriti tra le virgolette, insieme agli specificatori di formato, nella posizione in cuoi devono apparire:
Esempioint somma;
somma = 5+5;
printf("il risultato e' %d", somma);L'esempio stamperà "il risultato è 10".
Dopo l'output, il cursore rimane sulla stessa riga e così un output successivo verrà visualizzato subito dopo. Per portare a capo il cursore occorre aggiungere all'interno delle virgolette, nella posizione in cui si vuole andare alla riga successiva, i caratteri \n.
Questi caratteri vengono definiti sequenze di escape, ecco un elenco:Sequenze di escape Descrizione \n a capo riga(new line) \t tabulazione(tab) \r ritorno a capo della stessa riga \" doppi apici \\ backslash \b una battuta indietro(backspace) \a segnalazione acustica(bell)
Esempio riassuntivo:


