Attendi la lingua C di input dell'utente

Attendi la lingua C di input dell'utente
Nel linguaggio di programmazione C ci sono alcune funzioni di input. Utilizzando queste funzioni, possiamo attendere l'input dell'utente. In questo tutorial discuteremo delle funzioni di input in dettaglio.

String in formato

La stringa di formato è il formato per i dati inseriti. Questo formato inizia con % segno e seguito da un specificatore del formato. Specificatore di formato è un carattere specifico che viene utilizzato per il tipo di dati.

arg1, arg2, arg3 ... sono gli indirizzi delle variabili in cui verranno archiviati i dati immessi.

funzione scanf ()

Sintassi: int scanf ("formato stringa", arg1, arg2, arg3 ...)

Alcuni degli specificatori usati frequentemente sono i seguenti:

  • D - Utilizzato per i valori interi.
  • F - Utilizzato per il numero mobile.
  • C - Utilizzato per il valore di un singolo carattere.
  • S - Utilizzato per le corde.

Usando singolo scanf () funzione, uno o più input possono essere prelevati dall'utente.

IL scanf () La funzione prende input dall'ingresso standard (tastiera) e memorizza il valore in una variabile. La funzione attende l'input dell'utente fino a quando l'utente non preme il tasto. Il valore inserito viene archiviato in un buffer. Quando viene premuto il tasto Invio, scanf () La funzione inizia a leggere.

Esempio 1: Input intero

//Esempio 1.C
#includere
int main ()
int i;
printf ("Immettere il 1 ° valore intero:");
scanf ("%d", & i);
printf ("hai inserito: %d \ n", i);
printf ("Immettere il 2 ° valore intero:");
scanf ("%d", & i);
printf ("hai inserito: %d \ n", i);
restituzione 0;

Nell'esempio1.C, l'abbiamo visto quando abbiamo inserito i valori interi e premere il tasto Invio. IL scanf () La funzione prende il valore e lo memorizza nella variabile. Se inseriamo i valori separati dallo spazio, la funzione restituisce quando si incontra lo spazio ma i valori dopo lo spazio rimangono nel buffer di input. Ecco perché il secondo scanf () La funzione non attende l'input dell'utente, invece prende l'input dal buffer.

Esempio 2: input a singolo carattere

// Esempio2.C
#includere
int main ()
Char C;
printf ("Inserisci un carattere:");
scanf ("%c", ecc.);
printf ("hai inserito: %c \ n", c);
restituzione 0;

Nell'esempio2.C, l'abbiamo visto quando usiamo %C specificatore, il scanf () La funzione prende solo un carattere anche se abbiamo inserito più di un carattere.

Esempio 3: input a singolo carattere (più volte)

// Esempio3.C
#includere
int main ()
Char C;
printf ("Immettere il 1 ° carattere:");
scanf ("%c", ecc.);
printf ("hai inserito: %c \ n", c);
printf ("Immettere il 2 ° carattere:");
scanf ("%c", ecc.);
printf ("hai inserito: %c \ n", c);
restituzione 0;

Esempio 4:

// Esempio4.C
#includere
int main ()
Char C;
printf ("Immettere il 1 ° carattere:");
scanf ("%c", ecc.);
printf ("hai inserito: %c \ n", c);
printf ("Immettere il 2 ° carattere:");
scanf (" %c", ecc.);
printf ("hai inserito: %c \ n", c);
restituzione 0;

Esempio 5: input di stringa

// Esempio5.C
#includere
int main ()
Nome char [15];
printf ("Inserisci il tuo nome:");
scanf ("%s", nome);
printf ("hai inserito: %s \ n", nome);
restituzione 0;

funzione getc ()

Sintassi: int getc (file *stream)

getc () La funzione viene utilizzata per leggere un carattere dal puntatore del file (stream). Da leggere dalla tastiera, dobbiamo usare stdin. Questa funzione restituisce un valore intero del carattere di lettura.

Esempio 6:

// Esempio6.C
#includere
int main ()
Char C;
printf ("Immettere il 1 ° carattere:");
while ((c = getc (stdin)) == '\ n');
printf ("hai inserito: %c \ n", c);
While (Getc (stdin)!= '\ n');
printf ("Immettere il 2 ° carattere:");
while ((c = getc (stdin)) == '\ n');
printf ("hai inserito: %c \ n", c);
restituzione 0;

funzione getchar ()

Sintassi: int getchar (vuoto)

getchar () La funzione è uguale a getc (). L'unica differenza è quella getc () La funzione può leggere da qualsiasi flusso di input, mentre getchar () La funzione legge solo dall'input standard.

Esempio 7:

// Esempio7.C
#includere
int main ()
Char C;
printf ("Immettere il 1 ° carattere:");
while ((c = getchar ()) == '\ n');
printf ("hai inserito: %c \ n", c);
mentre (getchar ()!= '\ n');
printf ("Immettere il 2 ° carattere:");
while ((c = getchar ()) == '\ n');
printf ("hai inserito: %c \ n", c);
restituzione 0;

Conclusione

In questo articolo, abbiamo visto come le funzioni di input vengono utilizzate in linguaggio C. Tutte queste funzioni vengono prese input dal buffer di input e quando utilizziamo queste funzioni più volte, dobbiamo cancellare il buffer. Altrimenti, le funzioni non attenderanno l'input dell'utente e prendono l'input dal buffer.