wykład 2

Transkrypt

wykład 2
Elementarz języka ANSI C
•
•
•
•
•
•
•
•
•
Nazwy
Słowa kluczowe
Komentarze
Typy danych
Deklaracje zmiennych i stałych
Instrukcje
zapowiedź
Operatory
Priorytety operatorów
Wyrażenia
23
Nazwy (identyfikatory)
Poprawna nazwa w języku C to dowolny ciąg znaków
składający się z liter, cyfr lub znaku podkreślenia
_ (underline), rozpoczynający się od litery.
pole
X_1
obwod_kola
2litry
obwód_koła
a11
_wynik
UWAGA: w języku C rozróżniane są duże i małe litery.
Dlatego:
liczba
LICZBA
LiczbA
to w języku C trzy różne nazwy.
24
Słowa kluczowe języka C
auto
break
case
char
const
continue
default
do
double
else
enum
extern
float
for
goto
if
int
long
register
return
short
signed
sizeof
static
struct
switch
typedef
union
unsigned
void
volatile
while
asm
near
far
huge
25
Komentarze
Komentarz to tekst opisujący kod źródłowy programu
ignorowany przez kompilator podczas tłumaczenia kodu.
W języku ANSI C komentarz rozpoczyna się
sekwencją znaków /* i kończy sekwencją znaków */.
Pomiędzy tymi znakami może znajdować się dowolna
liczba znaków lub wierszy komentarza.
Przykłady:
/* Program rozwiazuje rownanie kwadratowe */
/* To jest komentarz
umieszczony w kilku wierszach */
d = b*b – 4*a*c;
obwod = 2 * pi
/* obliczamy wyroznik */
/* stala PI */
* r;
26
Typy danych
Stałoprzecinkowe
char
1 bajt
-128...127
short 2 bajty -32768...32767
int
long
2 bajty -32768...32767
4 bajty -2147483646...2147483647
4 bajty -2147483646...2147483647
signed
– ze znakiem (domyślnie)
unsigned – bez znaku
np. unsigned char
0...255
27
Typy danych
Zmiennoprzecinkowe
float
4 bajty
3.4*10-38 ... 3.4*1038
double
8 bajtów
1.7*10-308 ... 1.7*10308
long double 10 bajtów 3.4*10-4932... 1.1*104932
Inne:
void
– wartość nieistniejąca
const
– wartość stała
volatile – wartość ulotna
28
Deklaracje
Deklaracja to polecenie nadające zmiennej lub stałej nazwę,
określające typ przechowywanej wartości oraz rezerwujące
odpowiedni obszar pamięci. Dla stałej należy koniecznie
podać wartość.
Deklaracja zmiennej:
char znak;
int i, j, k;
float x, y;
Inicjalizacja zmiennej:
float pi = 3.14 ;
Deklaracja stałej:
const char znak = ‘a’ ;
const int a = 10 ;
const float pi = 3.14 ;
29
Instrukcje
 prosta
 złożona { }
 pusta ;
 warunkowa prosta if
i warunkowa złożona if-else
 wyboru switch
 iteracyjne (pętle): for, while, do-while
 przerwania break
 kontynuacji continue
 skoku goto
 powrotu return
30
Operatory
Operator to symbol lub nazwa operacji określonej
w języku programowania.
Argument operatora to tak zwany operand.
• jednoargumentowe
• dwuargumentowe
• trójargumentowy ?:
• wieloargumentowy ()
31
Operatory
Jednoargumentowy:
operator
-
a
Dwuargumentowy:
a
operand
operand
+
b
operator
32
Operatory
• arytmetyczne +
-
*
/
%
• zwiększania i zmniejszania ++ -• relacji
<
• logiczne
&&
• bitowe
&
• przypisania
= += -= *= /= %=
&= |= ^= <<= >>= ~=
• inne () []
<=
||
>
*
==
!=
!
| ^ <<
&
>=
>>
~
-> . , ?:
sizeof
33
Priorytety operatorów
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
()
[]
->
.
! ~
++ -+ - * &
sizeof
* / %
+ przedrostkowe
jednoargumentowe
<<
>>
< <= > >=
==
!=
&
^
|
&&
||
?:
= += -= *= /= %= ^= |= <<= >>=
,
34
Kolejność wykonywania działań
ab
cd
a + b / c - d
ŹLE!
(a + b) / (c – d)
1.
2.
3.
4.
5.
()
++ -- +
* / %
+ = += -=
-
*=
DOBRZE
(jednoargumentowe)
/=
%=
35
Kolejność wykonywania działań
- b / 2 * a
b
2a
ŹLE!
- b / (2 * a)
- b / 2 / a
1.
2.
3.
4.
5.
()
++ -- +
* / %
+ = += -=
DOBRZE
-
(jednoargumentowe)
*=
/=
%=
36
Wyrażenia arytmetyczne
ab
c
2
c = (a + b)/2.0;
Dzielenie całkowite „obcina”
część ułamkową.
 b  delta
x
2a
UWAGA: 9 / 2 =
9/2.0 =
9.0/2 =
9.0/2.0
4
4.5
4.5
= 4.5
x = (-b-sqrt(delta))/(2*a);
37
Wyrażenia logiczne
czy a jest równe b ?
czy x jest większe od y
i jednocześnie a jest różne od b ?
a == b
x > y && a != b
38

Podobne dokumenty