ein Kapitel zurück                                           ein Kapitel weiter

Jetzt kommen wir zu zwei Anweisungen die Ihnen helfen werden bei Schleifen. 'break' haben sie schon kurz im Kapitel 'switch....case' kennen gelernt. Als erstes wollen wir uns 'continue' ansehen....

/*Download:continue.c*/
#include <stdio.h>

int main()
{
int i;

for(i=1; i<=20; i++)
{
if(i%2)
continue;

printf("%d ",i);
}
return 0;
}

Bei diesem Programm werden alle geraden Zahlen bis 20 ausgegeben.

if(i%2)
    continue;


Mit der if - Anweisung überprüfen wir ob bei 'i%2' ein Rest herauskommt. Falls ein Rest herauskommt (bei ungeraden Zahlen kommt ein Rest heraus) wird die 'continue' - Anweisung ausgeführt. Durch 'continue' wird zurück zum Schleifenanfang gesprungen und der Rest im Anweisungsblock ausgelassen. Hier ein kurzer Ablauf.....

i=1;
if(i%2)
continue;
i++; i<=20; (i=2)
if(i%2)

printf("%d",i); (gibt 2 auf dem Bildschirm aus)
i++; i<=20; (i=3)
if(i%2)
continue;
i++ ; i<=20; (i=4)
if(i%2)

printf("%d",i); (gibt 4 auf dem Bildschirm aus)
i++; i<=20; (i=5)
......
......
u.s.w.



Ausgabe auf dem Bildschirm ist: 2 4 6 8 10 12 14 16 18 20
Jetzt ein Programm bei dem wir 'continue' und 'break' einsetzen...

/*Download:contin2.c*/
#include <stdio.h>

int main()
{
int i;

while(1)
{
printf(">");
scanf("%d",&i);
if(i<=100)
continue;

printf("Zahl war grösser als 100!\n");
break;
}
return 0;
}

Auch hier haben wir nichts Weltbewegendes. Mit 'while(1)' haben wir eine Endlosschleife die wir nur noch mit einem 'break' beenden können. Bei diesem Programm können vielleicht auch den nutzen von 'continue' sehen. Wir sparen uns die 'else' - Abweisung. Unser 'continue' wird solange ausgeführt bis wir eine Zahl größer als 100 eingeben.

Fassen wir zusammen: Mit 'break' haben sie die Möglichkeit aus der Schleife zu springen und mit 'continue' springen sie herauf zum Schleifenanfang!

ein Kapitel zurück          nach oben           ein Kapitel weiter


© 2001,2002 Jürgen Wolf