56 ROZDZIAŁ 9. INSTRUKCJE STERUJĄCE b = 6; if (a==b) { printf ("a jest równe b\n"); } else { printf ("a nie jest równe b\n"); } return 0; } Czasami zamiast pisać instrukcję if możemy użyć operatora wyboru (patrz Opera- tory): if (a != 0) b = 1/a; else b = 0; ma dokładnie taki sam efekt jak: b = (a !=0) ? 1/a : 0; Instrukcja switch Aby ograniczyć wielokrotne stosowanie instrukcji if możemy użyć switch . Jej uży- cie wygląda tak: switch (wyrażenie) { case wartość1: /* instrukcje, jeśli wyrażenie == wartość1 */ break; case wartość2: /* instrukcje, jeśli wyrażenie == wartość2 */ break; /* ... */ default: /* instrukcje, jeśli żaden z wcześniejszych warunków */ break; /* nie został spełniony */ } Należy pamiętać o użyciu break po zakończeniu listy instrukcji następujących po case. Jeśli tego nie zrobimy, program przejdzie do wykonywania instrukcji z następnego case. Może mieć to fatalne skutki: #include int main () { int a, b; printf ("Podaj a: "); scanf ("%d", &a); printf ("Podaj b: "); scanf ("%d", &b); switch (b) { case 0: printf ("Nie można dzielić przez 0!\n"); /* tutaj zabrakło break! */ default: printf ("a/b=%d\n", a/b);
... zobacz całą notatkę
Komentarze użytkowników (0)