ANSI C 1

ANSI C 1




Sterowanie

W każdym języku programowania instrukcje sterujące ustalają kolejność wykonywania obliczeń. Z większością konstrukcji sterujących spotkaliśmy się już przy omawianiu przykładów. Tu uzupełnimy ich zestaw, a także bardziej szczegółowo opiszemy te, o których już była mowa.


Instrukcje i bloki

Wyrażenie, takie jak x = 0 czy i++ lub printf(...), staje się instrukcją, jeśli jest zakon czone średnikiem, np.

x = 0;

i++;

printf(...);    I

W języku C średnik jest ogranicznikiem instrukcji, a nie separatorem, jak w językacł podobnych do Pascala.

Nawiasy klamrowe { i } są używane do grupowania deklaracji i instrukcji w jediu instrukcję złożoną, czyli blok, by całość stała się składniowo równoważna jednej inf trukcji. Jednym z oczywistych przykładów są nawiasy klamrowe otaczające treść funk cji; innym - nawiasy klamrowe zawierające kilka instrukcji po if, else, while lub fc (Zmienne można deklarować wewnątrz dowolnego bloku - omówimy to w rozdz. Po nawiasie klamrowym zamykającym blok nie może występować średnik.


Instrukcja if-else

Instrukcję if-else stosuje się przy podejmowaniu decyzji. Formalna postać tej instnil cji jest następująca:

3.2 INSTRUKCJA IF-ELSE


if (wyrażenie) instrukcjal else

instrukcja2

przy czym część else można pominąć. Najpierw oblicza się wyrażenie. Jeśli jest prawdziwe (tzn. jego wartość jest różna od zera), to zostanie wykonana instrukcjal. Jeśli zaś jest fałszywe (tzn. wartość wyrażenia jest równa zero) oraz jeśli istnieje część else, to zostanie wykonana instrukcjal.

Instrukcja if po prostu sprawdza numeryczną wartość wyrażenia, pewne warunki można więc uprościć. Najczęściej pisze się

‘rf (wyrażenie)

zamiast

if (wyrażenie != 0)

Czasami jest to naturalne i zrozumiałe, a czasami bywa tajemnicze.

Część else instrukcji if-else nie jest obowiązkowa, toteż może wystąpić pewna dwuznaczność, gdy w ciągu zagnieżdżonych instrukcji if jedna z części else zostanie pominięta. Rozwiązano to w ten sposób, że każda z części else jest przyporządkowana najbliższej z poprzednich instrukcji if nie zawierającej części else. Na przykład w konstrukcji

if (n > 0) if (a > b) z = a; else z = b;

część else jest związana z wewnętrzną instrukcją if, jak to podkreśliliśmy przez wcięcie. Jeśli nie oto chodzi, należy użyć nawiasów klamrowych wymuszających prawidłowe przyporządkowanie:

if (n > 0) { if (a > b) z = a;

}

else

z = b;

85


Wyszukiwarka

Podobne podstrony:
ANSI C 1 1 ELEMENTARZ tymi w nawiasy klamrowe. W naszym programie zliczania słów po else występuje
programowanie w jezyku drabinkowym Stanisław FlagaProgramowanie sterowników PLC w jeżyku drabinkowym
Materiały dodatkowe - Wprowadzenie do języka C - instrukcje sterujące w języku CWprowadzenie do języ
Uruchomienie i sprawdzenie programów sterowania - 11-IV PODSTAWOWE INSTRUKCJE PROGRAMOWANIA ROBOTA A
odstawowe instrukcje sterujące w języku Java if (wyrażenie) then instrukcja; else instrukcja; if
ANSI C 4 3 STEROWANIE instrukcją break dla uniknięcia takiego przejścia. Słabą stroną przechodzeni
ANSI C 7 3 STEROWANIE3.7    
ANSI C 1 4 FUNKCJE I STRUKTURA PROGRAMU wykonywalnego pliku zwanego a.out. Jeśli wystąpi błąd, np.
ANSI C 1 4 FUNKCJE I STRUKTURA PROGRAMU I* qsort: uporządkuj v[left]...v[right] rosnąco */ void qs
Temat 3 - Sterowanie przebiegiem programuĆwiczenie 1 - instrukcja warunkowa -    Używ
językuProgramowanie w Matlab D. Caban, P. Skurowski Wykład 2. Instrukcje sterujące, Funkcje

więcej podobnych podstron