3 in out

background image

Wejście/wyjście

Odczyt danych z klawiatury (standardowego wejścia) oraz zapis na monitor (standardowe wyjście) w

programie w C realizowany jest za pomocą funkcji systemowych printf i scanf znajdujących się w

standardowej bibliotece wejścia/wyjścia, która jest domyślnie dołączana do każdego programu.

Funkcja printf, która umożliwia wypisywanie wyników na standardowym wyjściu może mieć wiele

argumentów:

printf(tekst_sterujący, arg1, arg2,…)

Pierwszy argument jest tekstem zawartym między znakami ” i zawiera ciąg znaków mających się

pojawić wprost na wyjściu oraz formaty opisujące sposoby wypisywania na ekranie kolejnych

argumentów. Każdy opis pola (format) rozpoczyna się znakiem % a kończy znakiem przekształcenia

(np. d, f) i dotyczy kolejnego argumentu – liczba formatów powinna być równa liczbie argumentów

pomniejszonej o 1. Poniższy program powoduje wypisanie na ekranie wartości zmiennych i, j typu

integer oraz zmiennej a typu double.

int main(int argc, char *argv[])

{

int i=1,j;

double a=0.1;

j=i+1;

printf("\ti=%d\n\tj=%d\n\ta=%f\n",i,j,a);

}

Pierwszy parametr funkcji printf zawiera opisy pól odpowiadające wyprowadzanym zmiennym: %d –

opisuje zmienną i, kolejny opis %d opisuje zmienną j, %f opisuje zmienną a. Wartość każdej zmiennej

pojawi się na ekranie w nowej linii (\n) po odstępie (\t) poprzedzona nazwą zmiennej i znakiem

równości:

i=1

j=2

a=0.100000

background image

Znaki przekształcenia zależą od typu zmiennej, i określają sposób, w jaki ma zostać wyświetlona:

d – liczba dziesiętna całkowita

f – liczba zmiennoprzecinkowa w notacji dziesiętnej (np. 15.78)

e – liczba zmiennoprzecinkowa w notacji wykładniczej (np. 1.0e+10 oznacza 1 * 10

10

)

c – pojedynczy znak

s - ciąg znaków

x – liczba szesnastkowa

o – liczba ósemkowa

Aby określić liczbę wyświetlanych cyfr znak przekształcenia należy poprzedzić kodem długości. Np.:

%4d

– oznacza liczbę całkowitą zapisana na co najmniej 4 pozycjach (jeśli liczba znaków

nie będzie wystarczająca pole zostanie powiększone)

%10.4f

– oznacza liczbę rzeczywistą zapisaną na 10 pozycjach, z dokładnością do 4 cyfr po

przecinku

Do formatowania wyników w postaci tabelki może być przydatny znak – występujący bezpośrednio

po symbolu %, powodujący dosunięcie argumentu do początku pola (np. %-4d).

Do wprowadzania danych służy funkcja scanf:

scanf(tekst_sterujący, adres1, adres2,…)

Odczytuje ona dane ze standardowego wejścia według formatu zadanego w pierwszym parametrze

i zapisuje je pod adresami będącymi kolejnymi argumentami. tekst_sterujący zawiera jedynie

kody formatowania, które są analogiczne jak w funkcji printf. Adres zmiennej, która ma być

wczytana uzyskuje się za pomocą operatora &. Poniższy program wyświetla zaproszenie do podania

wartości zmiennej i oraz a, wczytuje dane i wyświetla ich wartości.

background image

int main(int argc, char *argv[])

{

int i;

double a;

printf("podaj i\n");

scanf("%d",&i);

printf("a=");

scanf("%lf",&a);

printf("\ti=%d\n\ta=%-10.2e\n",i,a);

}

A oto efekt wykonania programu Czcionką pogrubioną zapisane zostały dane podane przez

użytkownika:

podaj i

20

a=1000000

i=20

a=1.00e+006


Wyszukiwarka

Podobne podstrony:
Midi IN OUT
Knock in out transgenic mice i Nieznany
Effect of?renaline on survival in out of hospital?rdiac arrest
zwarcie in&out
Midi IN OUT
Knock in out transgenic mice i Nieznany
Obsługa plików in out
Midi IN OUT
Paramety IN, OUT, IN OUT
in out
AES EBU In Out wiring TI315 1 0EN
Procedury check in i check out oraz kompleksowa obsługa, powtórki do egzaminów
%d0%9e%d1%81%d1%82%d0%b0%d0%bf%d1%87%d1%83%d0%ba Cossack Ukraine In and Out of Ottoman Orbit, 1648 1
PIO typu OUT PIO typu IN
how would you go?out preserving the forests in your countr 3HWNOBIA6GQFMR2JBOAZD66I6KW3AT4GSZCEOYY
RES , Out of hospital airway management in the United States

więcej podobnych podstron