C bemenet / kimenet: printf () és scanf ()

Ebben az oktatóanyagban megtanulja használni a scanf () függvényt, hogy bevegye a felhasználót, és a printf () függvényt a kimenet megjelenítéséhez a felhasználó számára.

C kimenet

A C programozásban printf()az egyik fő kimeneti funkció. A funkció formázott kimenetet küld a képernyőre. Például,

1. példa: C kimenet

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

Kimenet

 C programozás

Hogyan működik ez a program?

  • Minden érvényes C programnak tartalmaznia kell a main()függvényt. A kód végrehajtása a main()függvény kezdetétől kezdődik .
  • Ez printf()egy könyvtárfunkció, amely formázott kimenetet küld a képernyőre. A függvény idézőjeleket nyomtat ki.
  • A printf()programunkban való felhasználáshoz be kell illesztenünk egy stdio.hfejlécfájlt az #include utasítás segítségével.
  • A függvényen return 0;belüli utasítás main()a program "Exit állapota". Nem kötelező.

2. példa: Egész kimenet

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

Kimenet

 Szám = 5

%dFormátummeghatározót használunk a nyomtatási inttípusokhoz. Itt a %dbelső idézőjeleket a testInteger értéke váltja fel.

3. példa: lebegő és dupla kimenet

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

Kimenet

 szám1 = 13.500000 szám2 = 12.400000

A nyomtatáshoz formátum-specifikálót floathasználunk %f. Hasonlóképpen használjuk %lfaz doubleértékek kinyomtatására is .

4. példa: Karakterek nyomtatása

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

Kimenet

 karakter = a 

A nyomtatáshoz formátum-specifikálót charhasználunk %c.

C bemenet

A C programozásban scanf()az egyik leggyakrabban használt funkció, amely a felhasználótól érkezik. A scanf()funkció beolvassa a formázott bemeneteket a standard bemenetekből, például a billentyűzetekről.

5. példa: Egész bemenet / kimenet

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

Kimenet

 Írjon be egy egész számot: 4 Szám = 4

Itt %da scanf()függvényen belül használtuk a formátum-specifikálót , hogy inta felhasználótól bemenetet vegyünk . Amikor a felhasználó megad egy egész számot, azt a testInteger változó tárolja.

Figyelje meg, hogy mi már &testIntegerbent használtuk scanf(). Ez azért van, mert az & testInteger megkapja a testInteger címét, és a felhasználó által megadott érték tárolódik ebben a címben.

6. példa: Úszó és kettős bemenet / kimenet

 #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; )

Kimenet

 Írjon be egy számot: 12.523 Írjon be egy másik számot: 10.2 num1 = 12.523000 num2 = 10.200000

Az általunk használt %fés %lfformátumleíró számára floatés doublerendre.

7. példa: C karakter I / O

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

Kimenet

 Írjon be egy karaktert: g Ön g 

Ha egy karaktert a felhasználó bevezeti a fenti programba, maga a karakter nem kerül tárolásra. Ehelyett egy egész értéket (ASCII érték) tárolunk.

És amikor ezt az értéket %cszöveges formátumban jelenítjük meg, a beírt karakter jelenik meg. Ha %da karakter megjelenítésére használjuk , akkor az ASCII értéke kerül kinyomtatásra.

8. példa: ASCII érték

 #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; )

Kimenet

Írjon be egy karaktert: g Ön g. Az ASCII értéke 103.

I / O többértékű

Így tud több bemenetet elvenni a felhasználótól és megjeleníteni őket.

 #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; )

Kimenet

 Írja be az egész számot, majd az úszót: -3 3.4 Írta be a -3 és a 3.400000 értékeket 

Az I / O formátum specifikációi

Amint a fenti példákból látható, használjuk

  • %d mert int
  • %f mert float
  • %lf mert double
  • %c mert char

Az alábbiakban felsoroljuk a gyakran használt C adattípusokat és azok formátummeghatározóit.

Adattípus Formátummeghatározó
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

érdekes cikkek...