Eine Einführung in die Programmiersprache C und die Grundlagen ...
Eine Einführung in die Programmiersprache C und die Grundlagen ...
Eine Einführung in die Programmiersprache C und die Grundlagen ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>E<strong>in</strong>e</strong> <strong>E<strong>in</strong>führung</strong> <strong>in</strong> <strong>die</strong> Informatik <strong>und</strong> <strong>die</strong> <strong>Programmiersprache</strong> C<br />
32 Designmethoden<br />
32.1.1 Struktogramme (nach Nassi-Schneiderman).<br />
Struktogramme bilden jeden elementaren Strukturblock der strukturierten Programmierung als e<strong>in</strong>deutig<br />
erkennbares graphisches E<strong>in</strong>zelsymbol ab. Es gibt e<strong>in</strong>deutige Vorschriften zur Darstellung<br />
der e<strong>in</strong>zelnen Elemente <strong>und</strong> ihrer Komb<strong>in</strong>ation. Struktogramme unterstützen damit den Entwurf<br />
strukturierter Programme <strong>in</strong> direkter Weise <strong>und</strong> erfordern <strong>die</strong> genaue Planung ihres E<strong>in</strong>satzes. So<br />
sollte <strong>die</strong> Struktur des Programmes oder wenigstens <strong>die</strong> des gerade bearbeiteten Programmbauste<strong>in</strong>s<br />
(Modul) bereits feststehen, bevor man mit dem Struktogramm beg<strong>in</strong>nt. Dieser Zwang zur exakten<br />
Durchstrukturierung von Programmen sowie <strong>die</strong> damit verb<strong>und</strong>ene Notwendigkeit zur Modularisierung<br />
ist <strong>die</strong> grosse Stärke der Struktogrammdarstellung (für e<strong>in</strong> Struktogramm steht im Normalfall<br />
nur e<strong>in</strong>e A4-Seite zur Verfügung, wird das Programm hierfür zu komplex, muss es <strong>in</strong> e<strong>in</strong>zelne kle<strong>in</strong>ere<br />
Module unterteilt werden).<br />
Symbol Beschreibung C-Code<br />
Ja<br />
Anweisung<br />
Anweisung1<br />
Ma<strong>in</strong><br />
Anweisungen<br />
Ist A > B?<br />
Anweisungen<br />
Ne<strong>in</strong><br />
Anweisung2<br />
Falls a<br />
= 1 =2 =3 Sonst<br />
Anw. Anw. Anw. 3 Anw. 4<br />
Wiederholen solange<br />
Anweisungen<br />
Wiederholen solange<br />
Modul/Funktionsblock, fasst e<strong>in</strong>e<br />
Menge von Blöcken zu e<strong>in</strong>em<br />
Benannten Modul, e<strong>in</strong>er Prozedur<br />
oder e<strong>in</strong>er Funktion zusammen<br />
Anweisung a = b + c;<br />
<strong>in</strong>t FunktionA (<strong>in</strong>t a, <strong>in</strong>t b)<br />
{<br />
Anweisungen<br />
return 0;<br />
}<br />
Verzweigung if (A > B) {<br />
Anweisung1<br />
} else {<br />
Anweisung2<br />
}<br />
Fallunterscheidung,<br />
Mehrfachverzweigung<br />
Schlaufe mit Anfangsprüfung<br />
(For <strong>und</strong> while), for-Schlaufen<br />
müssen <strong>in</strong> e<strong>in</strong>e Whileschlaufe<br />
umgeformt werden.<br />
switch(a) {<br />
case 1: Anweisung1 break;<br />
case 2: Anweisung2 break;<br />
case 3: Anweisung3 break;<br />
default: Anweisung4 break;<br />
}<br />
while (i < 10) {<br />
Anweisung<br />
}<br />
for (i= 0; i < 5; i++) {<br />
Anweisungen<br />
}<br />
Schlaufe mit Endeprüfung do {<br />
Anweisung<br />
} while (i < 10);<br />
Unterprogrammaufruf<br />
Unterprogrammaufruf<br />
Funktionsaufruf<br />
pr<strong>in</strong>tf("Hallo");<br />
b = FunktionA(c, d);<br />
Gedruckt am 10.09.2009 14:23:00 Letzte Änderung am: 10. September 2009 Version 2.4.1, I. Oesch 126/147