Język C. Kompendium wiedzy. Wydanie IV - Stehpen Kochan (2015) [JezykC].pdf

(3439 KB) Pobierz
Podziękowania
Za przygotowanie kolejnych wersji tej książki chciałbym podziękować następującym
osobom: Douglasowi McCormickowi, Jimowi Scharfowi, Henry’emu Tabickmanowi,
Dickowi Fritzowi, Steve’owi Levy’emu, Tony’emu Ianinno i Kenowi Brownowi. Chcę
podziękować też Henry’emu Mullishowi z Uniwersytetu Nowojorskiego za wszystko,
czego mnie nauczył o pisaniu, i za wprowadzenie w świat wydawniczy.
Pragnę szczególnie podziękować kilku osobom z wydawnictwa Pearson: Markowi
Taberowi, redaktorce prowadzącej Mandie Frank, redaktorce Charlotte Kughen oraz
korektorowi merytorycznemu Siddharcie Singhowi. Wreszcie chciałbym podziękować
pozostałym pracownikom wydawnictwa Pearson zaangażowanym w ten projekt, nawet
jeśli nie współpracowałem z nimi bezpośrednio.
Spis treści
O autorze . .........................................................................13
Wprowadzenie . .................................................................15
Rozdział 1
Podstawy . ........................................................................19
Programowanie .............................................................................19
Języki wysokiego poziomu ..............................................................20
Systemy operacyjne ......................................................................20
Kompilowanie programów ..............................................................21
Zintegrowane
środowiska
programistyczne ......................................23
Interpretery ...................................................................................24
Rozdział 2
Kompilujemy i uruchamiamy pierwszy program . ..................25
Kompilujemy nasz program ............................................................26
Uruchamianie programu .................................................................26
Analiza naszego pierwszego programu ............................................27
Wyświetlanie wartości zmiennych ...................................................29
Komentarze ..................................................................................31
Ćwiczenia
.....................................................................................32
Rozdział 3
Zmienne, typy danych i wyrażenia arytmetyczne . ...............35
Typy danych i stałe ........................................................................35
Podstawowy typ danych int .......................................................36
Typ zmiennoprzecinkowy float ...................................................37
Rozszerzony typ double ............................................................37
Pojedyncze znaki, typ char ........................................................38
Logiczny typ danych, _Bool .......................................................38
Określniki typu: long, long long, short, unsigned i signed ............40
Użycie zmiennych ..........................................................................42
Wyrażenia arytmetyczne .................................................................44
Arytmetyka liczb całkowitych
i jednoargumentowy operator minus ..........................................46
Łączenie
działań z przypisaniem .....................................................51
Typy _Complex i _Imaginary ...........................................................52
Ćwiczenia
.....................................................................................53
6
Język C. Kompendium wiedzy
Rozdział 4
Pętle w programach . .........................................................55
Liczby trójkątne .............................................................................55
Instrukcja for ................................................................................56
Operatory porównania ..............................................................58
Wyrównywanie wyników ............................................................62
Dane wejściowe dla programu ...................................................62
Zagnieżdżone pętle for .............................................................64
Odmiany pętli for .....................................................................66
Instrukcja while .............................................................................67
Instrukcja do .................................................................................71
Instrukcja break .......................................................................72
Instrukcja continue ..................................................................72
Ćwiczenia
.....................................................................................73
Rozdział 5
Podejmowanie decyzji . ......................................................75
Instrukcja if ..................................................................................75
Konstrukcja if-else ...................................................................79
Złożone warunki porównania .....................................................81
Zagnieżdżone instrukcje if ........................................................83
Konstrukcja else if ...................................................................85
Instrukcja switch ...........................................................................91
Zmienne logiczne ..........................................................................94
Operator wyboru ............................................................................98
Ćwiczenia
.....................................................................................99
Rozdział 6
Tablice . ..........................................................................101
Definiowanie tablicy ....................................................................102
Użycie tablic jako liczników .....................................................106
Generowanie ciągu Fibonacciego .............................................108
Zastosowanie tablic do generowania liczb pierwszych ...............109
Inicjalizowanie tablic ....................................................................111
Tablice znakowe ..........................................................................112
Użycie tablic do zamiany podstawy liczb ...................................113
Kwalifikator const ..................................................................115
Tablice wielowymiarowe ...............................................................117
Tablice o zmiennej wielkości ........................................................119
Ćwiczenia
...................................................................................121
Rozdział 7
Funkcje . .........................................................................123
Definiowanie funkcji ....................................................................123
Parametry i zmienne lokalne ........................................................126
Deklaracja prototypu funkcji ....................................................127
Automatyczne zmienne lokalne ...............................................128
Zwracanie wyników funkcji ...........................................................129
Spis treści
Nic, tylko wywoływanie i wywoływanie... .........................................133
Deklarowanie zwracanych typów, typy argumentów ...................136
Sprawdzanie parametrów funkcji .............................................138
Programowanie z góry na dół ........................................................139
Funkcje i tablice ..........................................................................140
Operatory przypisania .............................................................143
Sortowanie tablic ...................................................................145
Tablice wielowymiarowe ..........................................................147
Zmienne globalne .......................................................................152
Zmienne automatyczne i statyczne ...............................................155
Funkcje rekurencyjne ...................................................................158
Ćwiczenia
...................................................................................160
7
Rozdział 8
Struktury . .......................................................................163
Podstawowe wiadomości o strukturach .........................................163
Struktura na daty ........................................................................164
Użycie struktur w wyrażeniach .................................................166
Funkcje i struktury .......................................................................168
Struktura na czas ..................................................................173
Inicjalizowanie struktur ................................................................176
Literały złożone ......................................................................177
Tablice struktur ...........................................................................178
Struktury zawierające inne struktury ..............................................181
Struktury zawierające tablice ........................................................182
Wersje struktur ...........................................................................185
Ćwiczenia
...................................................................................186
Rozdział 9
Łańcuchy
znakowe . .........................................................189
Rozszerzenie wiadomości o
łańcuchach
........................................189
Tablice znaków ...........................................................................190
Łańcuchy
znakowe zmiennej długości ...........................................192
Inicjalizowanie i pokazywanie tablic znakowych .........................194
Porównywanie dwóch
łańcuchów
znakowych .............................197
Wprowadzanie
łańcuchów
znakowych .......................................199
Wczytanie pojedynczego znaku ................................................201
Łańcuch
pusty .......................................................................205
Cytowanie znaków .......................................................................208
Jeszcze o stałych
łańcuchach
.......................................................210
Łańcuchy
znakowe, struktury i tablice ...........................................211
Lepsza metoda szukania ........................................................214
Operacje na znakach ...................................................................218
Ćwiczenia
...................................................................................221
Zgłoś jeśli naruszono regulamin