|
Tablice:
deklaracja tablicy int tab[5], pierwszy element trablicy jest równy 0, a najwiekszy w tym elemencie to 4, wszystko działa według wzoru: tab[n], ostatni element jest [n-1]
int t3[]={5,10,15};
int t1[3]={5,10,15}; //deklaracja tablicy z wartością początkową
int t2[3]; //deklaracja tablicy bez wartości początkowej, jeśli tablica jest zadeklarowana globalnie to wartości wartości w niej są wyzerowane, jeśli zadeklarowana jest lokalnie to znajdują się w niej rózne śmieci z przedziału pamięci który został zarezerwowany dla tej tablicy
int t4[]; //taka deklaracja tablicy jest nieprawidłowa
sprawdzenie ile tablica zajmuje pamięci:
int t[20];
x=sizeof(t);
x=20*sizeof(int); //20*4=80, wielkość zawsze w bajtach
|
porównanie tablic:
int t3[30],t4[30];
int i;
int rozne;
rozne=0;
for(i=0;i<30&&!rozne;i++)
if(t3[i]!=t4[i]) rozne=1;
|
tablie wielowymiarowe:
int t5[3][5]; //[]- pierwszy wymiar []- drugi wymiar
deklaracja wartości początkowej
int t5[3][5]={{1,2,3,4,5}{6,7,8,9,10}{2,2,2,2,2}}
|
tablice znakowe
char tekst1[]={'A','B','C',\0}; // \0 - kod końca znaków
puts(tekst1)
|
lub
char tekst2[]="ABC"; // tu już nie trzeba dawać zera
|
zwiększenie kodu ASCI kodu w wybranej komórce tabeli
można zauważyć róznice w zapisie pomiedzy "A" - ciąg znaków (z końcem \0) i 'A' kod ASCI
Przykład zapełnienia tablicy daną wartością:
#include <stdlib.h>
#include <stdio.h>
int t[20];
int i,z,suma;
int main(int argc, char *argv[])
{
printf("Podaj wartosc jaka ma byc zapelniona tabela= ");
scanf("%d",&z);
for (i=0;i<20;i++)
t[i]=z;
for(i=0;i<20;i++)
suma=suma+t[i];
printf("Suma=%d \n\n",suma); //wyswietli sume wszystkich elementow tabeli
printf("A tak wyglada tabela");
for(i=0;i<20;i++)
printf("%d",t[i]); //wyswietlenie tabeli
}
|
|