Kontrollstrukturen Flashcards

1
Q

if-Bedingung - Definition

A

if (Bedingung == wahr) {

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Vergleichsoperator: a < b

A

wahr, wenn a kleiner als b ist

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Vergleichsoperator a <= b

A

wahr, wenn a kleiner oder gleich b ist

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Vergleichsoperator a > b

A

wahr, wenn a größer b ist

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Vergleichsoperator a >= b

A

wahr, wenn a größer oder gleich b ist

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Vergleichsoperator a == b

A

wahr, wenn a gleich b ist

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Vergleichsoperator !=

A

wahr, wen a ungleich b ist

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Wann können die geschweiften Klammern bei der If-Anweisung weggelassen werden.

A

Wenn nur eine Anweisung folgt

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

else if - Definition

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

else - Definiton

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

logischer Not-Operator

A
  • Unär, Präfix
  • ”!”
  • kann aus “wahr” falsch machen und umgekehrt
  • Jede Zahl != 0 wird zur Null gemacht und 0 wird zur 1 gemacht
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Anweisung vereinfacht: if(a != 0)

A

if(a)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Anweisung vereinfacht: if(a == 0)

A

if(!a)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

logischer Oder Operator

A
  • if((Bedingung1) || (Bedingung2))
  • binär
  • infix
  • linksassoziativ
  • wahr, wenn einer der beiden Bedingungen wahr ist.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Wann wird eine Bedingung bei der Oder Abfrage nicht mehr ausgewertet?

A

Wenn eine Bedingung davor schon wahr ist werden die nachfolgenden Bedingungen nicht mehr ausgewertet.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

logischer Und Operator

A
  • “&&”
  • binär
  • infix
  • linksassoziativ
  • wahr, wenn beide Bedingungen wahr sind
17
Q

Wann wird beim logischen Und Operator eine Bedingung nicht mehr ausgewertet?

A

Wenn eine Bedingung davor schon falsch ist werden die nachfolgenden Bedingungen auch nicht mehr ausgewertet.

18
Q

In welcher Headerdatei sind Makros für logische Operationen definiert und welche sind diese?

A
  • <iso646.h>
  • “and” für “&&”
  • “or” für “||”
  • “not” für “!”
19
Q

Bedingungsoperator - Defintion

A

<Bedingung> ? <AnweisungWahr> : <AnweisungFalsch>

20
Q

Was macht der Bedingungsoperator

A
  • Kompate schreibweise einer if-else
  • tertärer Operator
  • Anweisung 1 wird ausgeführt, wenn die Bedinung wahr ist, sonst Anweisung2
  • Rückgabe/Rückgabetyp ist immer der Rückgabetyp der letzten Anweisung in der Liste der Anweisungen
21
Q

switch - Definition

A
22
Q

wie funktioniert die switch Verzweigung

A
  • Arbeitet die Cases von oben nach unten durch. Wenn der Ausdruck==Ausdruck_i ist, wird die Anweisung_i ausgeführt.
  • Mit dem schlüsselwort break wird die Verzweigung beendet. Sonst werden alle nachfolgenden Anweisungen ausgeführt.
  • default wird immer ausgeführt.
  • es muss kein default case oder generell auch kein case angegeben werden.
  • der erste Case der passt wird ausgeführt
23
Q

While-Schleife - Definition

A
while(Bedingung == wahr) {
        /* Abarbeiten von Befehlen, bis Bedingung ungleich wahr */}
24
Q

Wie funktioniert die While-Schleife?

A

Der Anweisungsblock wird so lange ausgeführt, solange die Schleifenbedinung wahr ist. Die Schleifenbedingung wird vor jedem ausführen des Anweisungsblocks überprüft.

25
Q

Mit welchem Schlüsselwort kann ich eine Schleife aus dem Anweisungsblock der Schleife herraus beenden?

A

Mit der Anweisung break;.

26
Q

Was sind häufige Fehlerquellen bei while-Schleifen?

A
  • Schließe niemals eine Schleife mit eineme Simikolon ab.
  • Vermeide wenn möglich Überprüfungen auf Gleichheit in der Schleifenbedingung
  • Achte auf Fehler bei logischen Operatoren
27
Q

Warum ist das Simikolon eine häufige Fehlerquelle für while-Schleifen?

A

Wenn eine While-Schleife mit einem Simikolon beendet wird und dann der Anweisungsblock kommt, wird der Anweisungsblock nie ausgeführt und des wird ständig nur die Schleifenbedingung überprüft, was, wenn die Schleifenbedingung wahr ist zu einer Endlossschleife führt

28
Q

Warum sollte man die Überprüfung von Gleichheit in der Schleifenbedingung vermeiden wenn möglich?

A

Weil es sein kann, dass die Bedinung der while-Schleife nie erfüllt wird.

29
Q

Warum sind logische Operatoren häufig Fehlerquellen bei while-Schleifen?

A

Z.B. wird beim logischen Oder, wenn die erste Bedinung wahr ist die Zweite nicht mehr überprüft, wenn in der zweiten Bedinung aber z.B. etwas wie zahl++ steht und man eigentlich will das die zahl bei der überprüfung der Schleifenbedingung erhöht wird zu fehlern führt.

30
Q

do while-Schleife - Definition

A
do {
        /* Anweisungen */
} while(Bedinung == wahr);
31
Q

Wie Funktioniert die do while-Schleife?

A

Genau wie die while-Schleife nur das hier zuerste der Anweisungsblock ausgeführt wird und danach die Bedingung überprüft wird, um zu entscheiden ob der nächste Anweisungsblock ausgeführt werden soll.

32
Q

Was ist ein häufiger Fehler bei der do while-Schleife?

A

Das Simikolon hinter der while Anweisung zu vergessen.

33
Q

for-Schleife - Definition

A
for(Initialisierung; Bedingung; Reinitialisierung) {
        /* Anweisungen */
}
34
Q

Wie kann eine Schleife oder eine Fallunterscheidung sofort beenden?

A

Mit dem Schlüsselwort break

34
Q

Wie kann ich den aktuellen Schleifendurchlauf einer beliebigen Schleife überspringen?

A

Mit dem Schlüsselwort continue

35
Q

wie kann ich das komplette Programm sofort beenden

A

Mit dem Schlüsselwort exit

36
Q

Wie kann ich die Funktion in der ich mich aktuell befinde sofort beenden?

A

Mit dem Schlüsselwort return

37
Q

Wie kann ich beim Bedingungsoperator mehrere Anweisungen ausführen?

A

Die Anweisungen müssen in Klammern stehen getrennt durch ein Komma, kein Simikolon hinter den Anweisungen.