Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

 << zurück
C von A bis Z von Jürgen Wolf
Das umfassende Handbuch für Linux, Unix und Windows
– 2., aktualisierte und erweiterte Auflage 2006
Buch: C von A bis Z

C von A bis Z
1.116 S., mit CD, Referenzkarte, 39,90 Euro
Galileo Computing
ISBN 3-89842-643-2
gp Kapitel 10 Kontrollstrukturen
  gp 10.1 Verzweigungen mit der if-Bedingung
    gp 10.1.1 Anweisungsblock
  gp 10.2 Die Verzweigung mit else if
  gp 10.3 Die Verzweigung mit else
  gp 10.4 Der !-Operator (logischer Operator)
  gp 10.5 Logisches UND (&&) – Logisches ODER (||)
  gp 10.6 Bedingungsoperator ?:
  gp 10.7 Fallunterscheidung: die switch-Verzweigung
    gp 10.7.1 default
  gp 10.8 Die while-Schleife
    gp 10.8.1 Endlosschleife (while)
    gp 10.8.2 Fehlervermeidung bei while-Schleifen
  gp 10.9 Die do while-Schleife
  gp 10.10 Die for-Schleife
    gp 10.10.1 Beispiele für eine for-Schleife
  gp 10.11 Kontrollierte Sprünge
    gp 10.11.1 continue
    gp 10.11.2 break
  gp 10.12 Direkte Sprünge mit goto
  gp 10.13 Notationsstil
    gp 10.13.1 K&R-Stil
    gp 10.13.2 Whitesmith-Stil
    gp 10.13.3 Allman-Stil
    gp 10.13.4 GNU EMACS-Stil
    gp 10.13.5 Der Stil des Autors ;) (K&R-like)


Galileo Computing - Zum Seitenanfang

10.2 Die Verzweigung mit else if  toptop

Was ist, wenn die erste Bedingung im Listing zuvor wahr ist, d.h. die Zahl größer als 18 ist? Dann nimmt das Programm als nächsten Schritt dennoch die Überprüfung vor, ob die Zahl kleiner als 18 und gleich 18 ist. Das ist eigentlich nicht mehr notwendig. Sie können dies mit else if verbessern:

   else if(alter > 18)  {
      printf("Sie sind volljährig\n");
   }
   else if(alter == 18) {
      printf("Den Führerschein schon bestanden?\n");
   }

Hier die Syntax dazu:

if(BEDINGUNG1 == wahr) {
      Anweisung1;
}
else if(BEDINGUNG2 == wahr) {
      Anweisung2;
}
Anweisung3;

Ist die Bedingung1 wahr, wird die Anweisung1 im Anweisungsblock ausgeführt, und die Kontrollstruktur ist fertig. Ist Bedingung1 nicht wahr, wird die Bedingung2 überprüft. Ist Bedingung2 wahr, wird Anweisung2 ausgeführt, und das Programm endet. Ist aber auch Bedingung 2 nicht wahr, wird die Anweisung 3 ausgeführt.

Das Programmbeispiel sieht in der neuen Fassung so aus:

/* if3.c */
#include <stdio.h>
int main(void) {
   unsigned int alter;
   printf("Wie alt sind Sie: ");
   scanf("%d", &alter);
   if(alter < 18) {
      printf("Sie sind noch nicht volljährig\n");
   }
   else if(alter > 18)  {
      printf("Sie sind volljährig\n");
   }
   else if(alter == 18) {
      printf("Den Führerschein schon bestanden?\n");
   }
   printf("Bye\n");
   return 0;
}

Der Programmablaufplan dazu:

Abbildung
Hier klicken, um das Bild zu Vergrößern

Abbildung 10.3   Programmablaufplan if-else if

 << zurück
  
  Zum Katalog
Zum Katalog: C von A bis Z
C von A bis Z
bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: Shell-Programmierung






 Shell-Programmierung


Zum Katalog: Linux-UNIX-Programmierung






 Linux-UNIX-Programmierung


Zum Katalog: C/C++






 C/C++


Zum Katalog: UML 2.0






 UML 2.0


Zum Katalog: Reguläre Ausdrücke






 Reguläre Ausdrücke


Zum Katalog: Linux






 Linux


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo





Copyright © Galileo Press 2006
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de