18.06.2014 Aufrufe

Deckblatt und Inhaltsverzeichnis - Fachhochschule Kiel

Deckblatt und Inhaltsverzeichnis - Fachhochschule Kiel

Deckblatt und Inhaltsverzeichnis - Fachhochschule Kiel

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

PRG<br />

Programmierung<br />

Prof. Dr.-Ing. Klaus Felten<br />

<strong>Fachhochschule</strong> <strong>Kiel</strong><br />

Fachbereich Informatik <strong>und</strong> Elektrotechnik<br />

© September 2003


K. Felten: Programmierung <strong>Fachhochschule</strong> <strong>Kiel</strong><br />

<strong>Inhaltsverzeichnis</strong> Fachbereich Informatik <strong>und</strong> Elektrotechnik<br />

1 GRUNDLAGEN 1-1<br />

1.1. Programmierung .................................................................................................................1-1<br />

1.2. Erzeugung eines ablauffähigen Programms .......................................................................1-2<br />

1.3. Softwareentwicklung ( Softwareengineering ) .....................................................................1-3<br />

1.4. Programmiersprachen ........................................................................................................1-4<br />

1.5. Zeichendarstellung..............................................................................................................1-4<br />

2. STRUKTOGRAMME ( NASSI-SHNEIDERMAN-DIAGRAMME ) 2-1<br />

2.1. Allgemeines ........................................................................................................................2-1<br />

2.2. Elemente eines Struktogramms..........................................................................................2-1<br />

2.2.1. Elementarblock ........................................................................................................................ 2-1<br />

2.2.2. Reihung.................................................................................................................................... 2-2<br />

2.2.3. Modulblock............................................................................................................................... 2-2<br />

2.2.3. Selektionsblöcke ...................................................................................................................... 2-3<br />

2.2.3. Iterationsblöcke........................................................................................................................ 2-4<br />

2.3. Top-Down-Struktur .............................................................................................................2-5<br />

3 EINFÜHRUNG IN DIE PROGRAMMIERSPRACHE C 3.1-1<br />

3.1 Allgemeines .....................................................................................................................3.1-1<br />

3.2 Gr<strong>und</strong>legende Konzepte ..................................................................................................3.1-1<br />

3.3 Allgemeine Regeln...........................................................................................................3.3-1<br />

3.4 Programmaufbau.............................................................................................................3.4-1<br />

3.5 Datentypen ......................................................................................................................3.5-1<br />

3.5.1 Ordinaltypen.......................................................................................................................... 3.5-1<br />

3.5.2 Realtypen .............................................................................................................................. 3.5-2<br />

3.6 Vereinbarungen ............................................................................................................... 3.6-1<br />

3.6.1 Konstanten............................................................................................................................ 3.6-1<br />

3.6.2 Variablen............................................................................................................................... 3.6-3<br />

3.6.3 Typdefinition.......................................................................................................................... 3.6-4<br />

3.7 Ausdrücke <strong>und</strong> Operatoren..............................................................................................3.7-1<br />

3.7.1 Ausdrücke ............................................................................................................................. 3.7-1<br />

3.7.2 Operatoren............................................................................................................................ 3.7-1<br />

3.7.2.1 Zuweisungsoperator .............................................................................................. 3.7-1<br />

3.7.2.2 Vergleichsoperatoren ............................................................................................ 3.7-2<br />

3.7.2.3 Arithmetische Operatoren...................................................................................... 3.7-2<br />

3.7.2.4 Standardfunktionen für arithmetische Ausdrücke.................................................. 3.7-3<br />

3.7.2.5 Logische Operatoren ............................................................................................. 3.7-3<br />

3.7.2.6 Explizite Typumwandlung ( cast ) .......................................................................... 3.7-4<br />

3.7.2.7 Sonstige Operatoren ............................................................................................. 3.7-4<br />

3.7.2.8 Vorrangregeln........................................................................................................ 3.7-5<br />

1 - 2 PROG00.DOC 04.10.03


K. Felten: Programmierung <strong>Fachhochschule</strong> <strong>Kiel</strong><br />

<strong>Inhaltsverzeichnis</strong> Fachbereich Informatik <strong>und</strong> Elektrotechnik<br />

3.8 Anweisungen ...................................................................................................................3.8-1<br />

3.8.1 if-Anweisung.......................................................................................................................... 3.8-1<br />

3.8.1.1 Alternative Anweisung ........................................................................................... 3.8-1<br />

3.8.1.2 Bedingte Anweisung .............................................................................................. 3.8-1<br />

3.8.2 switch-Anweisung ................................................................................................................. 3.8-2<br />

3.8.3 while-Anweisung ................................................................................................................... 3.8-4<br />

3.8.4 do-while-Anweisung .............................................................................................................. 3.8-5<br />

3.8.5 for-Anweisung ....................................................................................................................... 3.8-6<br />

3.8.6 goto-Anweisung .................................................................................................................... 3.8-7<br />

3.9 Unterprogramme..............................................................................................................3.9-1<br />

3.9.1 Definition ............................................................................................................................... 3.9-1<br />

3.9.2 Gründe für die Verwendung von Unterprogrammen............................................................. 3.9-1<br />

3.9.3 Prozeduren <strong>und</strong> Funktionen.................................................................................................. 3.9-1<br />

3.9.4 C-Unterprogramme............................................................................................................... 3.9-1<br />

3.9.4.1 Aufruf <strong>und</strong> Wertübergabe ...................................................................................... 3.9-3<br />

3.9.4.2 Datenübergabe mittels gemeinsamer Variablen. .................................................. 3.9-4<br />

3.9.4.3 Funktionen ohne Parameter bzw. Returnwert ....................................................... 3.9-4<br />

3.9.4.4 Beispiel für eine Function ohne Returnwert........................................................... 3.9-4<br />

3.9.4.5 Beispiel für eine Function mit Returnwert.............................................................. 3.9-5<br />

3.10 Gültigkeitsbereich <strong>und</strong> Lebensdauer.............................................................................. 3.10-1<br />

3.10.1 Gültigkeitsbereich von Namen............................................................................................ 3.10-1<br />

3.10.2 Lebensdauer von Variablen ................................................................................................ 3.10-1<br />

3.11 Ein- <strong>und</strong> Ausgaben ........................................................................................................ 3.11-1<br />

3.11.1 Allgemeines ........................................................................................................................ 3.11-1<br />

3.11.2 Ein-/Ausgabe mit Formatumwandlung................................................................................ 3.11-1<br />

3.11.3 Standard-Ein-/Ausgabe....................................................................................................... 3.11-1<br />

3.11.3.1 Eingaben mittels Tastatur ( Standard-Eingabegerät ) ......................................... 3.11-2<br />

3.11.3.2 Ausgaben auf dem Bildschirm ( Standard-Ausgabegerät ) ................................. 3.11-6<br />

3.11.4 Ein-/Ausgabe mit Dateien ................................................................................................. 3.11-10<br />

3.11.4.1 Allgemeines ....................................................................................................... 3.11-10<br />

3.11.4.2 Dateien öffnen <strong>und</strong> schließen............................................................................ 3.11-11<br />

3.11.4.3 Textdateien <strong>und</strong> Binärdateien............................................................................ 3.11-11<br />

3.11.4.4 Lesen aus einer Datei........................................................................................ 3.11-13<br />

3.11.4.5 Schreiben in eine Datei...................................................................................... 3.11-15<br />

3.11.4.6 Formatiertes Lesen aus einem Puffer ............................................................... 3.11-16<br />

3.11.4.7 Formatiertes Schreiben in einen Puffer............................................................. 3.11-16<br />

3.11.4.8 Unformatiertes Schreiben <strong>und</strong> Lesen von Dateien............................................ 3.11-17<br />

3.12 Weitere Datentypen ....................................................................................................... 3.12-1<br />

3.12.1 Weitere Ordinaltypen .......................................................................................................... 3.12-1<br />

3.12.1.1 short..................................................................................................................... 3.12-1<br />

3.12.1.2 long...................................................................................................................... 3.12-1<br />

3.12.1.3 enum.................................................................................................................... 3.12-1<br />

3.12.2 Strukturierte Datentypen ..................................................................................................... 3.12-2<br />

3.12.2.1 array-Typ ............................................................................................................. 3.12-2<br />

3.12.2.2 struct-Typ............................................................................................................. 3.12-4<br />

3.12.2.3 union-Typ............................................................................................................. 3.12-6<br />

1 - 3 PROG00.DOC 04.10.03


K. Felten: Programmierung <strong>Fachhochschule</strong> <strong>Kiel</strong><br />

<strong>Inhaltsverzeichnis</strong> Fachbereich Informatik <strong>und</strong> Elektrotechnik<br />

3.12.3 Zeigertyp ............................................................................................................................. 3.12-7<br />

3.12.3.1 Variablentypen..................................................................................................... 3.12-7<br />

3.12.3.2 Bedeutung der Zeiger.......................................................................................... 3.12-7<br />

3.12.3.3 Verwendung von Zeigern..................................................................................... 3.12-9<br />

3.13 Arbeiten mit Zeichenketten ............................................................................................ 3.13-1<br />

3.13.1 Bearbeitung einzelner Zeichen ........................................................................................... 3.13-1<br />

3.13.2 Umwandlungs-Funktionen .................................................................................................. 3.13-2<br />

3.13.3 Zeichenketten kopieren, zusammenfügen <strong>und</strong> vergleichen ............................................... 3.13-4<br />

3.13.3.1 Kopieren von strings mit strcpy().................................................................... 3.13-4<br />

3.13.3.2 Kopieren von strings mit strncpy() ................................................................. 3.13-4<br />

3.13.3.3 Verketten von strings mit strcat()................................................................... 3.13-4<br />

3.13.3.4 Verketten von strings mit strncat() ................................................................ 3.13-4<br />

3.13.3.5 Vergleichen von strings mit strcmp() ............................................................... 3.13-5<br />

3.13.3.6 Vergleichen von strings mit strncmp()............................................................. 3.13-5<br />

Tafelarbeit<br />

• Modularer Aufbau von Programmen<br />

• Dynamische Speicherverwaltung<br />

• Programmbeispiele ( u. A. Klausuraufgaben )<br />

1 - 4 PROG00.DOC 04.10.03

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!