Inne działy

 

 

Instrukcja if - else

Przez sterowanie programem rozumie się zbiór instrukcji, które potrafią wybierać w zależności od danego im parametru czy mają zrobić to, czy coś innego. Pomimo iż wyrażenia warunkowe były używane w poprzednim rozdziale, to opiszemy tutaj dokładniej zasadę ich działania, oraz pokazany zostanie drugi sposób sprawdzania warunku. A więc zacznijmy od składni instrukcji if–else która wygląda następująco:

if (wyrazenie)
   akcje1
else
   akcje2

Gdzie jako wyrazenie można wstawić dowolny warunek z użyciem operatorów logicznych, przyrównania oraz relacji. A jako akcje dowolne instrukcje wykonywane przez program (przypisanie wartości zmiennym, wyświetlenie komunikatu, itp). Dla przykładu weźmy trywialny przykład, który sprawdza czy liczba a jest większa lub równa liczbie b i drukuje odpowiedni komunikat. Poniższy przykład prezentuje kod programu.

#include <stdio.h>
main ()
{
   int a = 4;
   int b = 7;
   if (a >= b)
      printf("a wieksze lub rowne b\n");
   else
      printf("a mniejsze lub rowne b\n");
}

Zapisz powyższy kod w pliku c3z1.c skompiluj go i uruchom.
Naszym wyrażeniem warunkowym na listingu powyżej jest: a >= b. Jeśli jest to prawda, czyli wartość zmiennej a jest większa lub równa wartości zmiennej b, to to wyrażenie przyjmuje wartość jeden, i zostanie wykonana pierwsza instrukcja printf w przeciwnym wypadku zero. Co to znaczy? Znaczy to tyle, że zostanie wykonana instrukcja po słowie kluczowym else

Jeśli chcemy aby wykonało się więcej instrukcji niż jedna (np. wyświetlenie tekstu i przypisanie zmiennej pewnej wartości – kod poniżej), jesteśmy zmuszeni użyć nawiasów klamrowych po słowie kluczowym if i/lub else.

if (wyrazenie)
{
   printf("Dowolny napis\n");
   i++;
}
else
{
   printf("Dowolny napis\n");
   i--;
}

Można w ogóle nie używać słowa kluczowego else, w razie nie spełnionego warunku, nic się nie stanie, program przechodzi do wykonywania kolejnych instrukcji.
Jeśli zagnieżdżamy instrukcje if–else, to musimy pamiętać o bardzo istotnej rzeczy, a mianowicie instrukcja else zawsze należy do ostatniej instrukcji if. Czyli w podanym niżej przykładzie instrukcja else wykona się wtedy, kiedy zmienna n będzie większa od 2 oraz nie parzysta.

#include <stdio.h>
main ()
{
int n = 3;
  if (n > 2)
    if (n % 2 == 0)
      printf("%d jest parzysta\n", n);
    else
      printf("%d jest nie parzysta\n", n);
}

Jeśli chcielibyśmy, aby zagnieżdżona instrukcja if nie posiadała części else, a za to „główny” if takową posiadał musimy użyć nawiasów klamrowych. Listing poniżej pokazuje jak to zrobić.

#include <stdio.h>
main ()
{
int n = 2;
if (n > 2)
{
  if (n % 2 == 0)
  printf("%d jest parzysta\n", n);
}
else
  printf("Liczba: %d jest mniejsza lub rowna 2\n", n);
}

Zobacz nasze wszystkie kursy

WWW


HTML
HTML - Znaczniki
CSS - Tutorial
CSS - Selektory
PHP
JavaScript

XML

XSLT

Bazy danych


SQL
SQLite
MySQL
PostgreSQL

 

 

Programowanie


C
C++
C#
Java
VisualBasic
Python

Linux


Podstawy Linuxa
Bash
Linuks artykuły

Windows


Excel funkcje
Windows wskazówki
Outlook

Pozotałe działy


Programy
Rozrywka

 

 

 

This email address is being protected from spambots. You need JavaScript enabled to view it.