Professional Documents
Culture Documents
PRZYKADOWY ROZDZIA
SPIS TRECI
KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG
Programowanie
w jzyku C. Szybki start
Autorzy: Larry Ullman, Marc Liyanage
Tumaczenie: Rafa Joca
ISBN: 83-7361-808-2
Tytu oryginau: C Programming : Visual
QuickStart Guide (Visual Quickstart Guides)
Format: B5, stron: 400
TWJ KOSZYK
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK
CZYTELNIA
FRAGMENTY KSIEK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treci
Spis treci
Wprowadzenie
9
Dlaczego wanie jzyk C?........................................................................10
Sposb dziaania jzyka C.........................................................................11
Co bdzie potrzebne? ................................................................................12
O ksice ...................................................................................................13
Uzyskanie pomocy ....................................................................................15
Zaczynamy przygod z jzykiem C
17
Skadnia podstawowa................................................................................18
Wywietlanie tekstu ..................................................................................21
Kompilacja i uruchomienie programu.......................................................23
Unikanie zamknicia aplikacji ..................................................................28
Dodanie komentarzy do kodu rdowego................................................30
Stosowanie biaych znakw ......................................................................33
Rozdzia 2.
Typy danych
35
Poprawna skadnia zmiennych ..................................................................36
Przypisanie wartoci do zmiennej .............................................................40
Wywietlanie zmiennych ..........................................................................41
Znaki..........................................................................................................44
Cigi znakw.............................................................................................46
Stae...........................................................................................................48
Rozdzia 3.
Liczby
51
Wybr odpowiedniego typu danych numerycznych .................................52
Operacje arytmetyczne ..............................................................................55
Operatory inkrementacji i dekrementacji ..................................................60
Kolejno wykonywania operatorw ........................................................63
Przepenienie i niedomiar..........................................................................66
Konwersja zmiennych ...............................................................................70
Rozdzia 4.
Struktury sterujce
73
Instrukcja warunkowa if............................................................................74
Operatory logiczne i porwnania.................................................................77
Klauzule else i else if ................................................................................81
5
Spis treci
Rozdzia 1.
Spis treci
Spis treci
Rozdzia 6.
Tablice
123
Wprowadzenie do tablic..........................................................................124
Przypisywanie wartoci do tablicy ..........................................................126
Dostp do wartoci tablicy ......................................................................131
Definiowanie tablic za pomoc staych...................................................134
Przechodzenie przez elementy tablicy w ptli.........................................136
Tablice znakw .......................................................................................139
Tablice wielowymiarowe ........................................................................144
Rozdzia 7.
149
Preprocesor jzyka C
177
Spis treci
Rozdzia 9.
Wskaniki
207
303
337
Spis treci
Spis treci
Dodatek A
Dodatek B
Materiay dodatkowe
381
Witryny internetowe................................................................................382
Tabele ......................................................................................................384
Spis treci
Skorowidz
387
Struktury sterujce
Struktury sterujce
73
Struktury sterujce
Rozdzia 4.
Instrukcja warunkowa if
Warunki to struktury sterujce pozwalajce
na rozgazianie przebiegu programu, czyli
uzalenianie jego dziaania od rnych parametrw.
Ze wszystkich rodzajw rozgazie najczciej
stosuje si instrukcj . Jej skadnia jest bardzo
prosta:
Instrukcja warunkowa if
74
Struktury sterujce
Listing 4.1. Podstawowa instrukcja warunkowa
sprawdza, czy zmienna test ma warto rn od 0
lub IDE.
2. Dodaj pocztkowy komentarz i kod (patrz
listing 4.1).
/* if.c - listing 4.1 */
!
"#
&
75
Instrukcja warunkowa if
Rozdzia 4.
6. Dokocz funkcj
.
4"
,
Instrukcja warunkowa if
Wskazwki
Tworzenie instrukcji warunkowej dla jednego
76
Struktury sterujce
Tabela 4.1. Operatory logiczne i porwnania
bardzo czsto wystpuj w warunkach i innych
strukturach sterujcych
Operatory logiczne i porwnania
Operator
Znaczenie
wikszy od
mniejszy od
#)
!)
))
rwny
>)
rny od
;;
??
>
negacja (not)
Operatory logiczne
i porwnania
Korzystanie z prostych zmiennych
(jak w poprzednim przykadzie) raczej nie
pozwoli nikomu zaj daleko w programowaniu
w jzyku C. Aby mc tworzy bardziej
zaawansowane instrukcje warunkowe, trzeba
wykorzysta operatory porwnania i logiczne
(patrz tabela 4.1).
#)*
5 66
783
7&94:1
Rozdzia 4.
lub IDE.
2. Dodaj pocztkowy komentarz i kod
!
"#
&
)*
Zmienna
przechowuje redni ocen
studenta. Na pocztku zostanie ustawiona
na warto .
4. Sprawd, czy studentowi naley si stypendium
za wyniki w nauce.
#)$,
@ &
&
3
A&0
62,
>-3
Jeli warto
jest wysza lub rwna ,
wykonujemy instrukcj wywietlenia tekstu
na ekranie. Jeeli rednia jest mniejsza,
pomijamy instrukcj
.
5. Sprawdzenie, czy rednia kwalifikuje si
do otrzymania ksiki.
#)+;;
!$,
@ &
6A83
A&
0
62,
>-3
78
Struktury sterujce
do otrzymania pochway.
#)(%;;
!+
@ &":83
A
&0
62,
>-3
7. Dokocz funkcj
.
4"
,
Rysunek 4.4. Zastosowanie innej wartoci srednia powoduje uzyskanie innego wyniku
79
Rozdzia 4.
Wskazwki
Sposb, w jaki zosta napisany przykad,
powoduje, e dla
mniejszej od 3,75
80
Struktury sterujce
/* Zrb co. */
/* Zrb co innego. */
81
Rozdzia 4.
#)$,
@ &
&
3
A&0
62,
>-3
#)+
@ &
6A83
A
&0
62,
>-3
#)(%
@ &":83
A
&0
62,
>-3
5A :& 78
30
-
82
Struktury sterujce
Zauwa, e drugi i trzeci warunek nie musz
sprawdza, czy warto jest mniejsza
od konkretnej liczby. Na przykad, jeli
wynosi 3,8, pierwszy i drugi warunek jest
faszywy, a dopiero trzeci jest prawdziwy.
W trzecim warunku nie trzeba ju sprawdza,
czy
jest mniejsza od 3,9, poniewa
zostao to stwierdzone ju w drugim warunku.
Skoro program sprawdza dany warunek, mamy
pewno, e poprzednie warunki z tej samej
konstrukcji byy faszywe.
4. Zapisz program w pliku srednia2.c, skompiluj
83
Rozdzia 4.
Operator trjargumentowy
Jzyk C posiada skadni alternatywn dla
konstrukcji . Jest to tak zwany operator
trjargumentowy. Nazwa wynika z faktu,
e operator ten wymaga trzech parametrw
(skada si z trzech czci). Oto jego podstawowa
skadnia:
BC
Operator trjargumentowy
Aby wykorzysta
operator trjargumentowy:
1. Utwrz nowy, pusty dokument w edytorze
(listing 4.4).
/* pogoda.c - listing 4.4 */
!
"#
&
84
Struktury sterujce
3. Zadeklaruj i zainicjalizuj zmienn cakowit.
& )*
85
Operator trjargumentowy
Rozdzia 4.
6. Dokocz warunek.
F2
3
:
& &
-3& Rysunek 4.9. Jeli jest ponad 30 stopni, pojawia
si nastpujcy komunikat (patrz listing 4.4)
Operator trjargumentowy
86
Struktury sterujce
Instrukcja switch
Poza operatorem trjargumentowym istnieje rwnie
inna odmiana tradycyjnego warunku, a mianowicie
instrukcja . Przyjmuje ona jako swj
parametr warto cakowit, a nastpnie sprawdza
j wzgldem kilku wymienionych moliwoci.
Oto przykad:
!4
! ,,%C
/* Zrb co. */
7
! ,,$C
/* Zrb co innego. */
7
C
/* Zrb to. */
7
87
Instrukcja switch
Rozdzia 4.
!
"#
&
Instrukcja switch
!4
88
Struktury sterujce
7. Dodaj domylny element i zakocz instrukcj
.
Rysunek 4.11. Wynik wykonania programu
dla zmiennej ustawionej na warto M
C
G
&
">-
7
Jeli zmienna ! nie zawiera wartoci + lub (cho jest to mao prawdopodobne), pojawi si
oglny komunikat.
8. Zakocz funkcj
.
4"
,
Wskazwki
Gwn wad instrukcji jest to, e mona
Nic nie stoi na przeszkodzie, by te same
89
Instrukcja switch
Rozdzia 4.
Ptla while
Instrukcje warunkowe to tylko jeden rodzaj
sterowania dziaaniem programu drugim s ptle.
Jzyk C obsuguje dwie postacie ptli: (i jego
siostra
) oraz
. Kady z typw ptli
wykonuje to samo zadanie powtarza okrelony
cig instrukcji a do uzyskania faszywoci pewnego
warunku ale w nieco inny sposb.
Ptla wyglda bardzo podobnie
do instrukcji , gdy wykonuje pewne
instrukcje, gdy okrelony warunek jest
prawdziwy.
Ptla while
4
/* Zrb co. */
90
Struktury sterujce
Listing 4.6. Ptla while pomaga policzy silni
z wybranej liczby. Ptla wykonuje si tak dugo,
jak dugo zmienna mnoznik jest mniejsza
lub rwna zmiennej liczba
lub IDE.
2. Dodaj pocztkowy komentarz i kod (listing 4.6).
/* silnia.c - listing 4.6 */
!
"#
&
>
7)%
>
)
> &
)
91
Ptla while
Rozdzia 4.
5. Wykonaj obliczenia.
.)&
Ptla while
Instrukcja
wywietla zarwno
parametr silni, jak i sam wynik oblicze.
9. Dokocz funkcj
.
4"
,
92
Instrukcja
pozwala opuci
aktualn iteracj ptli i powrci
do sprawdzania warunku. Po sprawdzeniu
warunku ptla moe, ale nie musi, by
wykonywana po raz kolejny.
4
/* Wykonaj cokolwiek. */
/* Powrt do pocztku ptli. */
Struktury sterujce
12. Uruchom aplikacj (patrz rysunek 4.14).
13. Dla porwnania zmodyfikuj warto zmiennej
!, a nastpnie ponownie skompiluj
Rysunek 4.14. Uruchomienie aplikacji
pozwala pozna warto silni dla liczby 5
93
Ptla while
Rozdzia 4.
Ptla for
Ostatni struktur sterujc omawian w tym
rozdziale (jak i w caej ksice) jest ptla
.
Podobnie jak ptla wykonuje ona pewn
liczb iteracji, a kada iteracja skada si z wczeniej
okrelonych polece. Cho dziaanie obu ptli
jest podobne, ich skadnia jest zdecydowanie inna.
Ptla for
>
94
Struktury sterujce
3. Usu ca ptl .
4. Rozpocznij definicj ptli
.
)
!)
7KK
uruchom aplikacj.
95
Ptla for
Rozdzia 4.
Wskazwki
Cho na og w ptli
korzysta si z trzech
opcjonalne.
Ptla for
96
Zagniedanie instrukcji
warunkowych i ptli
Jzyk C umoliwia zagniedanie rnych
struktur sterujcych, na przykad
umieszczenie jednej instrukcji warunkowej
wewntrz innej, jednej ptli wewntrz
drugiej, ptli wewntrz instrukcji
warunkowej itp. Gdy jednak korzysta si
z tego rozwizania, niezmiernie wane
jest zachowanie odpowiedniej skadni.
Oto kilka sugestii zwizanych
z zagniedaniem struktur sterujcych:
Zawsze uywaj otwierajcych
i zamykajcych nawiasw klamrowych
do oznaczenia pocztku i koca
struktury sterujcej.
Stosuj coraz wiksze wcicia
dla kolejnych zagniede.
Korzystaj z komentarzy w celu opisania
dziaania struktury sterujcej.
W trakcie stosowania zagniede
czsto popenianym bdem jest brak
zrwnowaenia liczby nawiasw
otwierajcych i zamykajcych.
W dalszej czci ksiki pojawi si wiele
zagniede. Wszystkie stosuj si
do powyszych sugestii w celu
zminimalizowania liczby bdw.