C įvestis / išvestis: printf () ir scanf ()

Šioje pamokoje išmoksite naudoti „scanf ()“ funkciją, kad gautumėte įvestį iš vartotojo, ir „printf“), kad rodytumėte išvestį vartotojui.

C išvestis

C programavime printf()yra viena iš pagrindinių išvesties funkcijų. Funkcija siunčia suformatuotą išvestį į ekraną. Pavyzdžiui,

1 pavyzdys: C išvestis

 #include int main() ( // Displays the string inside quotations printf("C Programming"); return 0; )

Rezultatas

 C programavimas

Kaip ši programa veikia?

  • Visose galiojančiose C programose turi būti main()funkcija. Kodo vykdymas prasideda nuo main()funkcijos pradžios .
  • Tai printf()yra bibliotekos funkcija, skirta formatuotam išėjimui siųsti į ekraną. Funkcija spausdina eilutę kabutėse.
  • Norėdami naudoti printf()savo programoje, turime įtraukti stdio.hantraštės failą naudodami #include pareiškimą.
  • Funkcijos return 0;viduje esantis teiginys main()yra programos „Išėjimo būsena“. Tai neprivaloma.

2 pavyzdys: sveikas skaičius

 #include int main() ( int testInteger = 5; printf("Number = %d", testInteger); return 0; )

Rezultatas

 Skaičius = 5

%dSpausdinimo inttipams naudojame formato specifikatorių . Čia %dvidinės citatos bus pakeistos testInteger reikšme.

3 pavyzdys: plūduriuojantis ir dvigubas išėjimas

 #include int main() ( float number1 = 13.5; double number2 = 12.4; printf("number1 = %f", number1); printf("number2 = %lf", number2); return 0; )

Rezultatas

 skaičius1 = 13.500000 skaičius2 = 12.400000

Norėdami spausdinti float, mes naudojame %fformato specifikatorių. Panašiai mes naudojame vertėms %lfspausdinti double.

4 pavyzdys: spausdinti simbolius

 #include int main() ( char chr = 'a'; printf("character = %c", chr); return 0; ) 

Rezultatas

 simbolis = a 

Norėdami spausdinti char, mes naudojame %cformato specifikatorių.

C įvestis

Programuojant C, scanf()tai yra viena iš dažniausiai naudojamų funkcijų, reikalingų vartotojui įvestis. scanf()Funkcija skaito suformatuoti įvestį iš standartinio įvesties, pvz klaviatūras.

5 pavyzdys: sveikas skaičius įvestis / išvestis

 #include int main() ( int testInteger; printf("Enter an integer: "); scanf("%d", &testInteger); printf("Number = %d",testInteger); return 0; )

Rezultatas

 Įveskite sveiką skaičių: 4 Skaičius = 4

Čia naudojome %dformato specifikatorių scanf()funkcijos viduje, kad gautume intvartotojo įvestį. Kai vartotojas įveda sveiką skaičių, jis saugomas kintamajame testInteger.

Atkreipkite dėmesį, kad mes naudojome &testIntegerviduje scanf(). Taip yra todėl, kad & testInteger gauna testInteger adresą, o vartotojo įvesta vertė yra saugoma tame adrese.

6 pavyzdys: plūduriuojantis ir dvigubas įvestis / išvestis

 #include int main() ( float num1; double num2; printf("Enter a number: "); scanf("%f", &num1); printf("Enter another number: "); scanf("%lf", &num2); printf("num1 = %f", num1); printf("num2 = %lf", num2); return 0; )

Rezultatas

 Įveskite skaičių: 12.523 Įveskite kitą skaičių: 10.2 num1 = 12.523000 num2 = 10.200000

Mes naudojame %fir %lfformatas specifikatorius už floatir doubleatitinkamai.

7 pavyzdys: C simbolio įvestis / išvestis

 #include int main() ( char chr; printf("Enter a character: "); scanf("%c",&chr); printf("You entered %c.", chr); return 0; ) 

Rezultatas

 Įveskite simbolį: g Įvedėte g 

Kai vartotojas įveda simbolį aukščiau nurodytoje programoje, pats simbolis nėra saugomas. Vietoj to, saugoma sveiko skaičiaus vertė (ASCII reikšmė).

Kai mes rodome tą vertę naudodami %cteksto formatą, rodomas įvestas simbolis. Jei mes naudojame %dsimboliui rodyti, atspausdinama jo ASCII reikšmė.

8 pavyzdys: ASCII vertė

 #include int main() ( char chr; printf("Enter a character: "); scanf("%c", &chr); // When %c is used, a character is displayed printf("You entered %c.",chr); // When %d is used, ASCII value is displayed printf("ASCII value is %d.", chr); return 0; )

Rezultatas

Įveskite simbolį: g Įvedėte g. ASCII vertė yra 103.

Įvesties / išvesties kelios vertės

Štai kaip galite paimti kelis vartotojo įvestis ir juos parodyti.

 #include int main() ( int a; float b; printf("Enter integer and then a float: "); // Taking multiple inputs scanf("%d%f", &a, &b); printf("You entered %d and %f", a, b); return 0; )

Rezultatas

 Įveskite sveikąjį skaičių ir tada plūduriuojantį: -3 3.4 Įvedėte -3 ir 3.400000 

I / O formato specifikacijos

Kaip matote iš pirmiau pateiktų pavyzdžių, mes naudojame

  • %d dėl int
  • %f dėl float
  • %lf dėl double
  • %c dėl char

Čia pateikiamas dažniausiai naudojamų C duomenų tipų ir jų formato specifikatorių sąrašas.

Duomenų tipas Formato specifikatorius
int %d
char %c
float %f
double %lf
short int %hd
unsigned int %u
long int %li
long long int %lli
unsigned long int %lu
unsigned long long int %llu
signed char %c
unsigned char %c
long double %Lf

Įdomios straipsniai...