lehrerbibliothek.deDatenschutzerklärung
Strukturierte Programmierung mit C/C++
Strukturierte Programmierung mit C/C++




Bertold Osswald

Winklers-Verlag
EAN: 9783804553897 (ISBN: 3-8045-5389-3)
209 Seiten, kartoniert, 16 x 24cm, 2002

EUR 16,90
alle Angaben ohne Gewähr

Rezension
"Strukturierte Programmierung mit C/C++" führt in die wesentlichen Elemente dieser Programmiersprachen ein. Der Aufbau der einzelnen Kapitel ist logisch und folgt stets dem gleichen Schema: Die vermittelten Grundlagen werden durch Beispiele ergänzt. Falls erforderlich werden zur Veranschaulichung auch Strukturdiagramme verwendet. Anhand von Übungen kann das Gelernte dann ausprobiert und gefestigt werden. Infokästen am Kapitelende fassen das wichtigste zusammen. Abschließend gibt es noch eine Aufgabenstellung zum behandelten Inhalt. Das Buch ist übersichtlich aufgebaut. Der Lernstoff wird kompakt und verständlich vermittelt. Ein gutes Grundlagenbuch zu C und C++.

Erwin Ferrao, lehrerbibliothek.de
Inhaltsverzeichnis
1 Was heißt Programmierung 5

1.1 Alltagsalgorithmen 5
Beispiel 1 5
Beispiel 2 5

1.2 Algorithmen zur Problemlösung mit Computern 6


2 Voraussetzungen und Stufen der Programmerstellung 7
Beispiel 3: Rechteck.cpp 7
1 Variablenliste 7
2 Programm-Grobstruktur 8
3 Codierung in einer Programmiersprache 8
4 Editieren und Sichern der Codierung 9
5 Austesten syntaktischer und logischer Fehler 10
6 Dokumentation 10
Aufgaben 1, 2, 3 11


3 Formatierte Ausgabe 12
Beispiel 4: Kalkulation.cpp 12
Beispiel 5: Mitarbeiter.cpp 14
Aufgabe 4 16


4 Verschiedene Programmstrukturen 17

4.1 Kontrollstrukturen 18
4.1.1 Einfachbedingungen 18
Beispiel 6: Zahlenvergleich1.cpp 18
Beispiel 7: Zahlenvergleich2.cpp 20
Beispiel 8: Rabattstaffel.cpp 22
Aufgaben 5, 6 24
4.1.2 Verknüpfte Bedingungen 24
Beispiel 9: bonus.cpp 25
Beispiel 10:pruefung.cpp 27
Aufgabe 7 29
4.1.3 Mehrfachauswahl 29
Beispiel 11: schulnote_if.cpp 29
Beispiel 11: schulnote_case.cpp 29
Beispiel 12. rechenart.cpp 32
Aufgaben 8, 9 34

4.2 Wiederholstrukturen 35
4.2.1 Unbedingte Schleifen 35
Beispiel 13: wurzel_u_co.cpp 37
Beispiel 14: wurzel_u_co2.cpp 39
Beispiel 15: rahmen.cpp 40
Aufgaben 10, 11 43
4.2.2 Bedingte Schleifen 43
Beispiel 16: umsatzsumme.cpp 44
1. Kopfgesteuerte Schleife 44
2. Fußgesteuerte Schleife 45
Beispiel 17: plausi.cpp 47
Beispiel 18: plausizins_2.cpp 49
Aufgaben 12, 13 53

4.3 Geschachtelte Schleifen 53
4.3.1 Geschachtelte DO-WHILE-Schleifen 54
Beispiel 19: u_summe_wiederhol.cpp 54
4.3.2 Geschachtelte Zählschleifen 56
Beispiel 20: einmaleins.cpp 57
Beispiel 21: stoppuhr.cpp 58
Beispiel 22: uhr2.cpp 60
Aufgaben 14, 15 63


5 Zeichenketten 65

5.1 Deklaration von Strings 65

5.2 Eingabe von Strings 65

5.3 Zuweisung von Stringinhalten 66

5.4 Strings verbinden 67

5.5 Strings vergleichen 68

5.6 Strings analysieren 69
Beispiel 23: zeichen_zaehlen.cpp 70
Beispiel 24: midstring.cpp 71
Aufgaben 16, 17 73


6 Felder 74

6.1 Eindimensionale Arrays 74
Beispiel 25: temparray.cpp 74

6.2 Stringarrays 75
Beispiel 26: nameneinaus.cpp 76
Beispiel 27: gehaltsstatistik.cpp 77

6.3 Mehrdimensionale Arrays 79
Beispiel 28: einmaleinsmatrix.cpp 79
Beispiel 29: matrix_vektor.cpp 81
Aufgabe 18 84

6.4 Sortieren von Arrays 84
Beispiel 30: sortier_array.cpp 85
Aufgabe 19 90


7 Funktionen 91

7.1 Einfache Funktionen 91
Beispiel 31: rechenjunktion.cpp 91
Beispiel 32: auswahljunktion.cpp 93

7.2 Funktionen mit Parameterübergabe 95
Beispiel 33: global.cpp 96
Beispiel 34: lokaljehlerhaft.cpp 96
Beispiel 35: lokaljauffaehig.cpp 97

7.3 Funktionen mit Rückgabewerten 98
Beispiel 36: rueckgabe.cpp 98
Beispiel 37: wuerfelnjunktion.cpp 99
Aufgaben 20, 21 102


8 Zeiger 103

8.1 Deklaration von Zeigern 103

8.2 Dereferenzierung 105

8.3 Übergabe einfacher Zählervariablen an Funktionen 106
Beispiel 38: call_by_reference_ and_value.cpp 106

8.4 Zeiger auf Strings und Übergabe an Funktionen 107
Beispiel 39: midstring_per_ funktionsauf ruf.cpp 107

8.5 Zeiger auf Felder 109
8.5.1 Definition 109
Beispiel 40: index_und_zeiger.cpp 112
8.5.2 Übergabe von Feldern an Funktionen 114
Beispiel 41: sortieren_parameteruebergabe.cpp 116
Aufgaben 22, 23 118


9 Objektorientierte Programmierung (OOP) 119

9.1 Klassen, Instanzen und Objekte 120
Beispiel 42: Klasse_Hund.cpp 121
Beispiel 43: Klasse_Verkauf.cpp 122
Aufgaben 24, 25 123

9.2 Öffentliche Zugriffsfunktionen 124
Beispiel 44:
klasse_verkauf_zfunktion.cpp 124
Aufgabe 26 126

9.3 Konstruktoren und Destruktoren 126
9.3.1 Standard-Konstruktoren und -destruktoren 126
Beispiel 45: klasse_hund_konstruktor.cpp 126
9.3.2 Überladen von Konstruktoren 127
Beispiel 46: rechteck_konstruktor.cpp 127
Aufgaben 27, 28 129

9.4 Vererbung 130
Beispiel 47: Hund_Vererbung.cpp 130
9.4.1 Vererbung bei mehreren Objekten 133
Beispiel 48:
Beschaeftigte_Vererbung.cpp 133
Aufgaben 29, 30 135
Aufgabe 31 136
9.4.2 Mehrere Stufen der Vererbung 136
Beispiel 49: Beschaeftigte_mehrere Vererbungsstufen.cpp 136
Aufgabe 32 138
9.4.3 Mehrfachvererbung 138
Beispiel 50: Beschaeftigte_Mehrfachvererbung.cpp 139
Aufgabe 33 142

9.5 Erzeugung dynamischer Objekte 142
9.5.1 Allgemeines 142
Beispiel 51: dynamische_int_reser-
vierung.cpp 144
Beispiel 52: dynamsiche_Res_m_Variablen.cpp 145
9.5.2 Objekte auf dem Heap erzeugen und löschen 146
Beispiel 53: dyn_Erzeugung_Objekt.cpp 146
Beispiel 54: dyn_Erzeugung_Objekt_Zugriff.cpp 148
Aufgaben 34, 35 150

9.6 Arrays von Objekten 150
9.6.1 Objekt-Arrays, auf dem Stack erzeugt 150
Beispiel 55: Array_Stack.cpp 150
Aufgabe 36 152
9.6.2 Objekt-Zeiger-Arrays, auf dem Stack erzeugt 152
Beispiel 56: ZeigerArray_Stack.cpp 153
Aufgabe 37 154
9.6.3 Objekt-Zeiger-Arrays auf dem Heap erzeugt 154
Beispiel 57: ZeigerArray_Heap.cpp 155
Aufgabe 38 157

9.7 Polymorphie 157
Beispiel 58: Firmen_nicht_polymorph.cpp 157
Beispiel 59. Firmen_polymorph.cpp 159
Beispiel 60: Auto_polymorph.cpp 162
Beispiel 62: Auto_Array_polymorph.cpp 163
Aufgaben 39, 40 165


10 Strukturen 166

10.1 Definition und Deklaration von Strukturen 166
Beispiel 62: Struktur_einfach.cpp 166
Beispiel 63: Struktur_mit_Array.cpp 166

10.2 Schachteln von Strukturen 168
Beispiel 64: Struktur_geschachtelt.cpp 169
Aufgaben 41, 42 170

10.3 Zeiger auf Strukturen 171
Beispiel 65: Struktur_einfach_mit_Zeigern.cpp 172

10.4 Übergabe von Strukturen an Funktionen 173
10.4.1 Strukturkomponenten an Funktionen übergeben 173
Beispiel 66: Komponenten_ueber-
geben_Gehaltsberechnung.cpp 173
10.4.2 Komplette Strukturen an Funktionen
übergeben 175
Beispiel 67: Struktur_uebergeben_u_sortieren.cpp 176

10.5 Strukturen und Objektarrays 179
Beispiel 68: Objekt_Array_statt_Struktur.cpp 179
Aufgaben 43, 44 182


11 Dateiverarbeitung 183

11.1 Dateioperationen 184

11.2 Arten von strukturierten Dateien 186
11.2.1 Verarbeitung Sequenzieller Dateien 187
Beispiel 69: Sequenzielle_Datei_einfach_Struktur.cpp 187
Beispiel 70: Sequenzielle_Datei_Struktur.cpp 188
Aufgaben 45, 46 190
11.2.2 Verarbeitung relativer Dateien 192
Beispiel 71: Relative_Schueler-datei.cpp 196
Beispiel 72. Relative_Schueler-datei_lokale_Variablen.cpp 201
Aufgabe 47 205


Sachwortverzeichnis 208