C Ulaz / izlaz: printf () i scanf ()

U ovom vodiču naučit ćete koristiti funkciju scanf () za preuzimanje korisničkog unosa i funkciju printf () za prikaz korisničkog izlaza.

C Izlaz

U programiranju C printf()jedna je od glavnih izlaznih funkcija. Funkcija šalje formatirani izlaz na zaslon. Na primjer,

Primjer 1: C izlaz

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

Izlaz

 C Programiranje

Kako funkcionira ovaj program?

  • Svi valjani C programi moraju sadržavati main()funkciju. Izvršenje koda započinje od početka main()funkcije.
  • Funkcija printf()je knjižnice za slanje formatiranog izlaza na zaslon. Funkcija ispisuje niz unutar navodnika.
  • Da bismo koristili printf()u našem programu, trebamo uključiti stdio.hdatoteku zaglavlja koristeći #include naredbu.
  • return 0;Izjava unutar main()funkcija je „Izlaz status” programa. Nije obavezno.

Primjer 2: Cjelobrojni izlaz

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

Izlaz

 Broj = 5

%dZa ispis intvrsta koristimo specifikator formata . Ovdje će %dunutarnji citati biti zamijenjeni vrijednošću testInteger.

Primjer 3: plutajući i dvostruki izlaz

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

Izlaz

 broj1 = 13.500000 broj2 = 12.400000

Za ispis floatkoristimo %fspecifikator formata. Slično tome, koristimo %lfza ispis doublevrijednosti.

Primjer 4: Ispis znakova

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

Izlaz

 karakter = a 

Za ispis charkoristimo %cspecifikator formata.

C Ulaz

U programiranju na C, scanf()jedna je od najčešće korištenih funkcija za unos podataka od korisnika. scanf()Funkcija čita formatiran ulaz iz standardnog ulaza, kao što su klavijature.

Primjer 5: Cjelobrojni ulaz / izlaz

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

Izlaz

 Unesite cijeli broj: 4 Broj = 4

Ovdje smo upotrijebili %dspecifikator formata unutar scanf()funkcije kako bismo intod korisnika preuzeli unos. Kad korisnik unese cijeli broj, on se pohranjuje u varijablu testInteger.

Primijetite, da smo koristili &testIntegerunutra scanf(). To je zato što & testInteger dobiva adresu testInteger, a vrijednost koju je unijeo korisnik pohranjuje se na toj adresi.

Primjer 6: Float i dvostruki ulaz / izlaz

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

Izlaz

 Unesite broj: 12.523 Unesite drugi broj: 10.2 num1 = 12.523000 num2 = 10.200000

Koristimo %fi %lfformat specifikatora za floati doublerespektivno.

Primjer 7: Ulaz / izlaz znaka C

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

Izlaz

 Unesite znak: g Upisali ste g 

Kad korisnik unese znak u gornji program, sam lik se ne pohranjuje. Umjesto toga, pohranjuje se cijela vrijednost (ASCII vrijednost).

A kada tu vrijednost prikažemo u %ctekstualnom formatu, prikazuje se uneseni znak. Ako koristimo %dza prikaz znaka, ispisuje se njegova ASCII vrijednost.

Primjer 8: ASCII vrijednost

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

Izlaz

Unesite znak: g Upisali ste g. Vrijednost ASCII je 103.

I / O višestruke vrijednosti

Evo kako možete uzeti više ulaza od korisnika i prikazati ih.

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

Izlaz

 Unesite cijeli broj, a zatim lebdenje: -3 3.4 Upisali ste -3 i 3.400000 

Specifikacije formata za I / O

Kao što možete vidjeti iz gornjih primjera, koristimo

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

Evo popisa najčešće korištenih C vrsta podataka i njihovih specifikatora formata.

Vrsta podataka Specifikator formata
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

Zanimljivi članci...