Oblika niza
Format niz je format za vnesene podatke. Ta oblika se začne z znakom %, ki ji sledi specifikator oblike. Specifikator oblike je poseben znak, za katerega se bere vrsta podatkov.
arg1, arg2, arg3… so naslovi spremenljivk, kjer bodo shranjeni vneseni podatki.
funkcija scanf ()
Sintaksa: int scanf (formatni niz, arg1, arg2, arg3 ...)
Nekateri pogosto uporabljeni specifikatorji so naslednji:
- d - Uporablja se za celoštevilčne vrednosti.
- f - Uporablja se za plavajočo številko.
- c - Uporablja se za vrednost enega znaka.
- s - Uporablja se za strune.
Uporaba single scanf () funkcijo, lahko uporabnik vzame en ali več vnosov.
The scanf () funkcija vnese vhod iz standardnega vnosa (tipkovnica) in vrednost shrani v spremenljivko. Funkcija počaka na vnos uporabnika, dokler uporabnik ne pritisne tipke enter. Vnesena vrednost se shrani v medpomnilnik. Ko pritisnete tipko za vnos, scanf () funkcija začne brati.
Primer 1: Celobrojni vnos
//Primer1.c#vključi
intglavni(){
intjaz;
printf ('Vnesite prvo celoštevilsko vrednost:');
scanf ('%d', &jaz);
printf ('Vstopili ste: %d n',jaz);
printf ('Vnesite 2. celoštevilsko vrednost:');
scanf ('%d', &jaz);
printf ('Vstopili ste: %d n',jaz);
vrnitev 0;
}
V primeru 1.c smo videli, da ko vnesemo celoštevilčne vrednosti in pritisnemo tipko enter. The scanf () funkcija vzame vrednost in jo shrani v spremenljivko. Če vnesemo vrednosti, ločene s presledkom, se funkcija vrne, ko naletimo na presledek, vendar vrednosti po presledku ostanejo v vhodnem medpomnilniku. Zato drugi scanf () funkcija ne bo čakala na vnos uporabnika, temveč bo vzela vnos iz vmesnega pomnilnika.
Primer 2: Vnos z enim znakom
//Primer2.c#vključi
intglavni(){
charc;
printf ('Vnesite znak:');
scanf ('% c', &c);
printf ('Vstopili ste: %c n',c);
vrnitev 0;
}
V primeru2.c smo to videli, ko uporabljamo % c specifikator, scanf () funkcija vzame samo en znak, tudi če smo vnesli več znakov.
Primer 3: Vnos z enim znakom (večkrat)
//Primer3.c#vključi
intglavni(){
charc;
printf ('Vnesite prvi znak:');
scanf ('% c', &c);
printf ('Vstopili ste: %c n',c);
printf ('Vnesite drugi znak:');
scanf ('% c', &c);
printf ('Vstopili ste: %c n',c);
vrnitev 0;
}
Primer 4 :
//Primer4.c#vključi
intglavni(){
charc;
printf ('Vnesite prvi znak:');
scanf ('% c', &c);
printf ('Vstopili ste: %c n',c);
printf ('Vnesite drugi znak:');
scanf ('% c', &c);
printf ('Vstopili ste: %c n',c);
vrnitev 0;
}
Primer 5: Vnos niza
//Primer5.c#vključi
intglavni(){
charime[petnajst];
printf ('Vnesite svoje ime: ');
scanf ('%s',ime);
printf ('Vstopili ste: %s n',ime);
vrnitev 0;
}
funkcija getc ()
Sintaksa: int getc (FILE *tok)
getc () funkcija se uporablja za branje znaka iz kazalca FILE (tok). Za branje s tipkovnice moramo uporabiti stdin . Ta funkcija vrne celo število prebranega znaka.
Primer 6:
//Primer6.c#vključi
intglavni(){
charc;
printf ('Vnesite prvi znak:');
medtem((c= getc (stdin))==' n');
printf ('Vstopili ste: %c n',c);
medtem( getc (stdin)! =' n');
printf ('Vnesite drugi znak:');
medtem((c= getc (stdin))==' n');
printf ('Vstopili ste: %c n',c);
vrnitev 0;
}
funkcija getchar ()
Sintaksa: int getchar (void)
getchar () funkcija je enaka kot getc () . Edina razlika je v tem getc () funkcija lahko bere iz katerega koli vhodnega toka, medtem ko getchar () funkcija bere samo s standardnega vhoda.
Primer 7:
//Primer7.c#vključi
intglavni(){
charc;
printf ('Vnesite prvi znak:');
medtem((c= getchar ())==' n');
printf ('Vstopili ste: %c n',c);
medtem( getchar ()! =' n');
printf ('Vnesite drugi znak:');
medtem((c= getchar ())==' n');
printf ('Vstopili ste: %c n',c);
vrnitev 0;
}
Zaključek
V tem članku smo videli, kako se vnosne funkcije uporabljajo v jeziku C. Vse te funkcije so vnesene iz vhodnega vmesnega pomnilnika in ko te funkcije uporabljamo večkrat, moramo počistiti medpomnilnik. V nasprotnem primeru funkcije ne bodo počakale na vnos uporabnika in vzele vnos iz vmesnega pomnilnika.