1
Informatyka 1
Informatyka 1
zaj
zaj
ę
ę
cia nr 9
cia nr 9
Elektrotechnika, semestr II
Elektrotechnika, semestr II
rok akademicki 2008/2009
rok akademicki 2008/2009
mgr in
mgr in
ż
ż
. Pawe
. Pawe
ł
ł
Myszkowski
Myszkowski
Plan dzisiejszych zaj
Plan dzisiejszych zaj
ęć
ęć
1.
1.
Podstawowe informacje o tablicach
Podstawowe informacje o tablicach
2.
2.
Konstrukcja tablicy w j
Konstrukcja tablicy w j
ę
ę
zyku C
zyku C
3.
3.
Przyk
Przyk
ł
ł
ady wykorzystania tablic
ady wykorzystania tablic
4.
4.
Zadania do zrobienia
Zadania do zrobienia
2
1. Podstawowe informacje o tablicach
1. Podstawowe informacje o tablicach
Tablica:
Tablica:
-
-
jest typem z
jest typem z
ł
ł
o
o
ż
ż
onym,
onym,
-
-
sk
sk
ł
ł
ada si
ada si
ę
ę
z kom
z kom
ó
ó
rek,
rek,
-
-
przechowuje w kom
przechowuje w kom
ó
ó
rkach dane
rkach dane
tego samego typu,
tego samego typu,
-
-
mo
mo
ż
ż
e by
e by
ć
ć
wielowymiarowa.
wielowymiarowa.
Og
Og
ó
ó
lna posta
lna posta
ć
ć
deklaracji tablicy:
deklaracji tablicy:
typ_elementu
typ_elementu
nazwa_tablicy[wymiar1]
nazwa_tablicy[wymiar1]
…
…
[wymiarN]
[wymiarN]
np
np
.
.
int
int
tablica[10];
tablica[10];
char tekst[255];
char tekst[255];
float
float
macierz[5][2];
macierz[5][2];
2. Konstrukcja tablicy w j
2. Konstrukcja tablicy w j
ę
ę
zyku C
zyku C
3
Deklaracja tablicy razem z inicjacj
Deklaracja tablicy razem z inicjacj
ą
ą
:
:
int
int
tab[10]; //sama deklaracja
tab[10]; //sama deklaracja
int
int
tab[10]={0,9,2,3,4,1,2,34,55,21};
tab[10]={0,9,2,3,4,1,2,34,55,21};
char znaki[5]={'t','e','x','t','
char znaki[5]={'t','e','x','t','
\
\
0'};
0'};
float
float
macierz1[3][2]={{1,1},{2,2,},{3,3}};
macierz1[3][2]={{1,1},{2,2,},{3,3}};
float
float
macierz2[3][2]={1,1,2,2,3,3}; //to samo
macierz2[3][2]={1,1,2,2,3,3}; //to samo
W j
W j
ę
ę
zyku C inicjatorami nie mog
zyku C inicjatorami nie mog
ą
ą
by
by
ć
ć
zmienne.
zmienne.
Je
Je
ś
ś
li lista jest kr
li lista jest kr
ó
ó
tsza ni
tsza ni
ż
ż
rozmiar, dok
rozmiar, dok
ł
ł
adane s
adane s
ą
ą
zera lub
zera lub
wska
wska
ź
ź
niki puste.
niki puste.
3. Przyk
3. Przyk
ł
ł
ady wykorzystania tablic
ady wykorzystania tablic
Odwo
Odwo
ł
ł
ywanie si
ywanie si
ę
ę
do kom
do kom
ó
ó
rek tablicy:
rek tablicy:
int
int
tab[4];
tab[4];
tab[0]=1;
tab[0]=1;
tab[1]=3;
tab[1]=3;
tab[2]=2;
tab[2]=2;
tab[3]=11;
tab[3]=11;
int
int
suma=tab[0]+tab[1]+tab[2]+tab[3];
suma=tab[0]+tab[1]+tab[2]+tab[3];
printf("Podaj
printf("Podaj
warto
warto
ść
ść
pierwszej kom
pierwszej kom
ó
ó
rki");
rki");
scanf("%d",&tab[0]);
scanf("%d",&tab[0]);
3. Przyk
3. Przyk
ł
ł
ady wykorzystania tablic
ady wykorzystania tablic
4
Wykorzystanie sta
Wykorzystanie sta
ł
ł
ych oraz p
ych oraz p
ę
ę
tli:
tli:
const
const
int
int
ROZMIAR=10;
ROZMIAR=10;
//definicja sta
//definicja sta
ł
ł
ej
ej
int
int
tablica[ROZMIAR
tablica[ROZMIAR
];
];
//deklaracja tablicy
//deklaracja tablicy
for (
for (
int
int
i=0;i<ROZMIAR;i
i=0;i<ROZMIAR;i
++)
++)
{
{
printf("Podaj
printf("Podaj
%d element tablicy",i+1);
%d element tablicy",i+1);
scanf("%d",&tablica[i
scanf("%d",&tablica[i
]);
]);
}
}
3. Przyk
3. Przyk
ł
ł
ady wykorzystania tablic
ady wykorzystania tablic
Uwagi:
Uwagi:
-
-
tablice w j
tablice w j
ę
ę
zyku C s
zyku C s
ą
ą
zawsze indeksowane od zera;
zawsze indeksowane od zera;
-
-
w j
w j
ę
ę
zyku C nie jest sprawdzany zasi
zyku C nie jest sprawdzany zasi
ę
ę
g odwo
g odwo
ł
ł
ania,
ania,
czyli zgodno
czyli zgodno
ść
ść
indeksu z wymiarem tablicy;
indeksu z wymiarem tablicy;
-
-
w j
w j
ę
ę
zyku C do okre
zyku C do okre
ś
ś
lenia rozmiaru tablicy u
lenia rozmiaru tablicy u
ż
ż
ywamy
ywamy
sta
sta
ł
ł
ej lub warto
ej lub warto
ś
ś
ci podanej bezpo
ci podanej bezpo
ś
ś
rednio.
rednio.
3. Przyk
3. Przyk
ł
ł
ady wykorzystania tablic
ady wykorzystania tablic
5
Dzi
Dzi
ę
ę
kuj
kuj
ę
ę
za uwag
za uwag
ę
ę