Wyklad 6 tablice


Podstawy programowania. Wykład 6  tablice
Małgorzata Nalbach-Moszyńska
8 Tablice ................................................................................................................................ 2
8.1 Deklaracja .................................................................................................................... 2
8.2 Nadawanie wartości elementom tablicy ...................................................................... 2
1
Podstawy programowania. Wykład 6  tablice
Małgorzata Nalbach-Moszyńska
8 Tablice
" Typ złożony. Fragment pamięci podzielony na takie same komórki tego samego typu.
Można sobie wyobrażać jako takie same szuflady.
" Z tablicą związane są typ elementów i liczba elementów (wielkość).
" Do poszczególnych elementów tablicy odwołujemy się przez indeks (numer kolejny
elementu).
" Elementy w tablicy numerujemy od 0.
" W tablicy 6 elementowej możliwe indeksy elementów są z zakresu 0..5
" O dwóch ostatnich cechach trzeba stale pamiętać  częste zródło błędów wykonania.
Na przykład 6-elementowa tablica całkowita
element
2 4 6 8 10 12
indeks
0 1 2 3 4 5
8.1 Deklaracja tablicy
" Musi zawierać:
o typ wartości przechowywanej w każdym elemencie,
o nazwę tablicy,
o liczbę elementów.
" Składnia:
[ ];
gdzie
to dowolny typ danych dopuszczalny w C;
" Przykłady:
int wyniki [5]; // 5 elementów, indeks 0..4
char samogloski [7]; // 7 elementów, indeks 0..6
8.2 Nadawanie wartości elementom tablicy
" Przypisanie
o Składnia:
[] = ;
2
Podstawy programowania. Wykład 6  tablice
Małgorzata Nalbach-Moszyńska
Uwaga:
Trzeba zadbać o to by:
- wartością była liczba całkowita z zakresu
0.. -1
- wartość dała się sprowadzić do typu elementów tablicy.
o Przykłady
wyniki[1] = 4;
samogloski[0] =  a ;
" Inicjacja
int liczby[3]={1,2,3}; // inicjacja: podane wartości
//wszystkich elementów
int liczby[3]={1}; // niepełna inicjalizacja
int liczby[]={1,2,3}; // automatyczne nadawanie rozmiaru:
// kompilator sam obliczy rozmiar
" Przykład 1
W tablicy dni przechowywane są liczby dni w każdym miesiącu roku. Chcemy je
wydrukować.
/* w6p1.c wyświetlenie liczby dni w kolejnych miesiącach */
#include
int main()
{
int dni[] = {31,28,31,30,31,30,31,31,30,31,30,31};
unsigned int i;
printf ("%d \t %d \t %d\n",sizeof dni, sizeof (int),
sizeof dni / sizeof (int));
for (i = 0; i < sizeof dni / sizeof (int) ; i++)
/* nie musze wiedzieć ile elementów */
printf( "Miesiac %d ma %d dni.\n", (i+1), dni[i]);
return 0;
}
" Przykład: Wyliczanie kosztu
/* arrayone.cpp -- male tablice liczb calkowitych */
#include
int main()
{
int guziki[6]; /* tworzy trojelementowa tablice */
int total, i, inajw, najw;
int cenyguzikow[] = {20, 30, 5,10, 15, 60};
/* tworzenie + inicjalizacja tablicy */
3
Podstawy programowania. Wykład 6  tablice
Małgorzata Nalbach-Moszyńska
guziki[0] = 7;
/* przypisuje wartosc pierwszemu elementowi */
guziki[1] = 8;
guziki[2] = 6;
guziki[3] = 9;
guziki[4] = 2;
guziki[5] =10;
/* UWAGA: Jeli kompilator C nie pozwala takiej
tablicy zainicjalizować, nalezy zamiast int cenyguzikow[3]
uzyc zapisu static int cenyguzikow[3]. */
printf("Razem guzikow = %d \n",
guziki[0] + guziki[1] + guziki[2]);
printf( "Paczka %d guzikow kosztuje po %d gr za guzik.\n",
guziki[1], cenyguzikow[1] );
total = guziki[0] * cenyguzikow[0] +
guziki[1] * cenyguzikow[1];
total = total + guziki[2] * cenyguzikow[2];
printf("Laczny koszt guzikow to %d groszy.\n", total);
printf("\nRozmiar tablicy guziki = %d bajtow.\n",
sizeof guziki);
printf("Rozmiar jednego elementu = %d bajtow.\n",
sizeof guziki[0]);
/* najwięcej guzikow */
najw = 0; /* największa liczba */
inajw = 0; /* indeks rodzaju guzików, których
jest najwięcej */
for (i=0; i<6; ++i)
if (guziki[i] >najw ) {najw = guziki [i]; inajw =i;}
printf ("najw %d inajw %d \n",najw, inajw);
return 0;
}
4


Wyszukiwarka

Podobne podstrony:
Wykład02 TabliceKarnaugha
TABLICE TRWANIA ŻYCIA 2006 do wykładu 9 11
Demografia tabliceTrwania Wyklad 5
Wykład X Tworzenie i minimalizacja tablic przejść wyjść
Sieci komputerowe wyklady dr Furtak
Wykład 05 Opadanie i fluidyzacja
Historia państwa i prawa Polski Testy Tablice
WYKŁAD 1 Wprowadzenie do biotechnologii farmaceutycznej
mo3 wykladyJJ
ZARZĄDZANIE WARTOŚCIĄ PRZEDSIĘBIORSTWA Z DNIA 26 MARZEC 2011 WYKŁAD NR 3
Wyklad 2 PNOP 08 9 zaoczne
Wyklad studport 8

więcej podobnych podstron