Ich verstehe die Ausgabe nicht
-
switch ('B')
{
case 'A' : puts ("Eins");
case 'A'+1: puts ("Zwei");
case 'A'+2: puts ("Drei");
default : puts ("Null");
}warum wird hier
Zwei
Drei
Nullausgegeben? die Zwei verstehe ich ja, weil 'A'+1 = B ist. Aber warum der Rest? 'A'+2 sollte ja C sein.
-
Vielleicht möchtest du
break
am Ende deiner Blöcke setzen? Ein switch ist ein primitives 'spring hier hin', kein 'führ nur diesen Block aus'.Die Technik mit dem break gehört zu jeder brauchbaren Beschreibung von switch.
-
Weil das Programm von einem case in denn nächsten durchfällt, wenn der case nicht durch break; beendet wird. Lies noch mal Syntax und Funktion der switch-case-Anweisung genau nach.
-
Weil der Code weiter ausgeführt wird, da da nirgends ein
break
steht. Wahrscheinlich willst Duswitch ('B') { case 'A' : puts ("Eins"); break; case 'A'+1: puts ("Zwei"); break; case 'A'+2: puts ("Drei"); break; default : puts ("Null"); break; }
-
das war eine aufgabe in einer probeklausur. habs jetzt aber verstanden vielen dank