ANSI C 2

ANSI C 2



1 ELEMENTARZ

1 ELEMENTARZ

’\n’llc==’\t’)


if (C >= 'O' && C <= ’9') -H-ndigitfc-O']; else if ( c == ’ ’ || c == -H-nwhite; else

++nother;

Wzorzec

if (warunek-1) instrukcja-1 else if (warunek-2) instrukcja-2

else

instrukcja-n

pojawia się ciągle w programach jako sposób wyrażania decyzji wielowariantowycl Warunki są obliczane kolejno, począwszy od najwyższego, aż zostanie znaleziony m runek prawdziwy, po czym wykonuje się związaną z nim instrukcję i resztę się pomijj (Każda instrukcja może być zbudowana z kilku instrukcji zawartych w nawiasach kl« rowych.) Niespełnienie żadnego z warunków spowoduje wykonanie instrukcji znajduj* cej się po ostatnim słowie else, o ile takie występuje. Jeśli końcowe else i instrukcja opuszczone, jak w programie zliczania słów, to nie podejmuje się żadnej akcji. Międz] początkowym if i końcowym else może wystąpić dowolna liczba zestawów

else if (warunek) instrukcja

Sposób zapisu tej konstrukcji jest kwestią stylu, radzimy jednak robić to tak, jak pokfr zaliśmy; gdyby każde wystąpienie if było odsunięte od lewego marginesu wyznaczo-nego przez poprzednie else, wówczas długa sekwencja takich decyzji wymaszerowa łaby poza prawą krawędź strony.

W rozdziale 3 omawiamy instrukcję switch pozwalającą zapisać decyzje wielow* riantowe w inny sposób. Jest ona szczególnie użyteczna w sytuacjach, w który* sprawdza się przynależność wartości wyrażenia całkowitego lub znakowego do okre! lonego zbioru stałych. Dla porównania w p. 3.4 prezentujemy inną wersję tego pi gramu, zawierającą właśnie instrukcję switch.

Ćwiczenie 1.13. Napisz program tworzący histogram długości słów wejściowych. Łatwiej rysuje się histogram z wykresami poziomymi; pionowa orientacja jest bardziej wymagająca.

1-7 FUNKCJE


Ćwiczenie 1.14. Napisz program tworzący histogram częstości wyst nych znaków pochodzących z wejścia.


Funkcje

Funkcja w języku C jest równoważna podprogramowi lub funkcji w Fortranie, a także procedurze lub funkcji w Pascalu. Funkcja jest wygodnym sposobem zamknięcia pewnych obliczeń w „czarnej skrzynce”, której później można używać nie dbając o to, jak je zrealizowano. Dzięki dobrze zaprojektowanym funkcjom można zignorować to, jak zadanie zostało wykonane; wystarczy wiedzieć co będzie zrobione. Język C opracowano tak, aby posługiwanie się funkcjami było łatwe, wygodne i skuteczne; często w programach napotkasz funkcje, których definicje składają się z kilku wierszy i które są wywołane tylko raz - po prostu dla większej czytelności fragmentu programu.

Dotychczas korzystaliśmy jedynie z funkcji, w które zostaliśmy wyposażeni, jak printf, getchar czy putchar; nadszedł czas, aby napisać kilka własnych. W języku C nie występuje operator potęgowania, taki jak ** w Fortranie, mechanizm definiowania funkcji zademonstrujemy więc pisząc funkcję power(m,n), podnoszącą liczbę całkowitą m do potęgi całkowitej dodatniej n. Na przykład wartością wyrażenia power(2,5) jest 32. Funkcja ta nie jest zbyt użyteczna, gdyż oblicza jedynie dodatnie potęgi małych liczb całkowitych, ale dla naszych potrzeb zupełnie wystarczy. (W bibliotece standardowej występuje funkcja pow(x,y), która podnosi wartość x do potęgi y.)

Oto funkcja power i program główny, który ją wywołuje; od razu można więc zobaczyć całą strukturę programu.

#include <stdio.h>

int power(int m, int n);

/* testowanie funkcji power */ main()

{

int i;

for (i = 0; i < 10; -f+i)

printf(”%d %d\n”, i, power(2,i), power(-3,i)); return 0;

}

47


Wyszukiwarka

Podobne podstrony:
ANSI C 2 1 ELEMENTARZ W naszym przykładzie występuje sekwencja

ANSI C 1 1 ELEMENTARZ tymi w nawiasy klamrowe. W naszym programie zliczania słów po else występuje
Foto(035) KARTKÓWKA Z WYBRANYCH ELEMENTÓW /FT /ll ŚRODOWISKA GEOGRAFICZNEGO POLSKI Wl/ (C?** GR
OG2 ELEMENTY ROWKA . UKOSOWM i SPOIMY U    « : • . •    . .
elementy2 *»• “s? "=! 6 3 ■ ~ s ^ --^ , lŁ__ s *
12 5, Elementy ściskane i zginane oraz Ur = 0,326-6,04 5 q^lA = __5__ 384 EIy 384 205-106-252-10-8
Zdjęcie0107 Helisa jest ważnym elementem struktury ll-rzędowęj białek Polrpeptydowy łańcuch jes
74577 P6050013 Życie Marty Świckiej zostało przedstawione przez pisarkę jako historia UDadlr Element
dydaktyka wyklady 08 (6) M ~T~n j-~
ANSI C 1 1 ELEMENTARZ Wypisz tekst ahoj, przygodo I już pojawia się pierwsza duża przeszkoda. Aby
ANSI C 3 1 ELEMENTARZ fahr = lower; while (fahr <= upper) { celsius = 5 * (fahr-32) / 9; printf

więcej podobnych podstron