Tablouri și Șiruri

Curs
7/10 (1 vot)
Conține 1 fișier: doc
Pagini : 9 în total
Cuvinte : 2575
Mărime: 15.50KB (arhivat)
Publicat de: Aurelian Alexa
Puncte necesare: 0

Extras din curs

TABLOURI SI SIRURI

În esenta un tablou este o lista de variabile de acelasi tip. Un tablou de caractere poarta numele de sir. Accesul la un element al tabloului se face cu ajutorul unui indice sau mai a multi indici. Tablourile ocupa în memorie locatii contigue. Tablourile pot avea una sau mai multe dimensiuni. Sirurile, tablouri unidimensionale sunt terminate cu un caracter special, caracterul null (‘�’).

Între tablouri si pointeri exista o legatura strânsa.

Tablouri unidimensionale

Forma generala de declarare a unui tablou unidimensional este:

tip nume_tablou [dimensiune];

unde:

- tip - declara tipul de baza al tabloului, care este tipul fiecarui element al tabloului;

- dimensiune – specifica numarul de elemente ale tabloului;

- nume_tablou - este numele dat tabloului.

De exemplu, pentru a declara un tablou t cu 10 elemente de tip int cu elementele t[0],

t[1] …t[9] vom scrie:

int t[10];

Un element al tabloului este accesat prin indexarea numelui tabloului folosind numarul elementului. Primul element al tabloului are indexul 0. Pentru a indexa un tablou, trebuie specificat numele tabloului urmat de indexul elementului între paranteze drepte.De exemplu al doilea element al tabloului t poate fi accesat prin t[1].

Exemplu. Program pentru a initializa elementele tabloului t cu valori cuprinse între 0 si 9.

# include <stdio.h>

void main (void)

{

int i, t[10];

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

x[i] = i;

}

Necesarul de memorie pentru memorarea elementelor unui tablou unidimensional este direct proportional cu tipul si dimensiunea sa, total octeti =sizeof(tip) * dimensiune

Elemetele unui tablou sunt memorate într-o zona de memorie contigue în ordinea indicilor.

Limbajul C nu controleaza limitele unui tablou. Astfel se poate depasi ambele “margini” ale unui tablou, se poate scrie valoarea unui element de tablou în locul altor variabile sau peste instructiunile masina ale programului. De aceasta problema este raspunzator cel care scrie programul si nu compilatorul C. De exemplu:

int x[10],i;

for (i = 0; i < =10; i ++) x [i] = i;

determina x sa depaseasca limitele.

Un element de tablou poate sa apara oriunde pot apare variabile simple sau constante, în general în cadrul expresiilor. În C nu este posibil sa copiem direct elementele unui tablou în alt tablou, printr-o instructiune de atribuire de forma:

int x[5], y[5];

y + x; /* nu este posibil */

y=x; /* nu este admis*/

Pentru a realiza acest lucru este necesar sa copiem fiecare element în mod explicit, adica:

int x [5], y[5], i;

for (i = 0; i < 5; ++i)

y[i] = x[i];

sau

for (i =1; i <6; i++)

y[i-1] = x[i-1];

Pentru a citi valorile elementelor unui tablou cu functia scanf, este necesar a se pune operatorul & (de adresa) în fata elementului de tablou. De exemplu pentru a citi elementele tabloului x putem scrie:

for (i = 0; i < 5; ++i){

print f (“ x[%d] =”,i);

scan f (“ %d”, & x[i]);

}

Exemplu. Program ce realizeaza ordonarea unui tablou care are cel mult 50 elemente prin metoda “bulelor”.

# include <stdio.h>

void main (void)

{

int x[50];

int i, j, n, a, k;

print f(“Introduceti numarul elementelor tabloului n<=50”);

scanf(“%d”, &n);

print f(“ n Introduceti elementele tabloului”);

for (i=0; i<n; i++){

printf(“ n x[%d] = “, i);

scanf (“%d”, &x[i]);

}

do {

k = 0;

for (i = 0; i < n-1; i++)

if (x[i] > x[i+1]){

a = x[i];

x[i] = x[i+1];

x[i+1] = a;

k = 1

}

} while (k! = 0);

print f (“Tabloul ordonat: n”);

for (i = 0; i < n: i++)

Preview document

Tablouri și Șiruri - Pagina 1
Tablouri și Șiruri - Pagina 2
Tablouri și Șiruri - Pagina 3
Tablouri și Șiruri - Pagina 4
Tablouri și Șiruri - Pagina 5
Tablouri și Șiruri - Pagina 6
Tablouri și Șiruri - Pagina 7
Tablouri și Șiruri - Pagina 8
Tablouri și Șiruri - Pagina 9

Conținut arhivă zip

  • Tablouri si Siruri.doc

Alții au mai descărcat și

Programarea Calculatoarelor - Anul 1 - ETTI - C++

LUCRAREA 9 Scopul lucrarii îl constituie prezentarea tipurilor de date neomogene (structurile), utilizarea operatorului typedef în contextul...

Tablouri și Șiruri de Caractere

Un tablou este o colecţie de variabilede acelaşi tip, apelate cu acelaşi nume. Tablourile sunt plasate într-o zonă de memorie contiguă. Accesul la...

Structuri de Date și Algoritmi

Arbori Binari Optimi Despre arbori binari optimi putem vorbi atunci cand, pentru fiecare dintre cheile unui arbore binar ordonat cunoastem...

Algoritmi și Programare

În anul 1642, matematicianul si fizicianul Blaise Pascal (1623-1662) a inventat prima masina mecanica, cu roCi dinCate, capabila sa realizeze...

Programare Logică și Funcțională

Limbajele de programare sunt împartite pe diferite niveluri în functie de gradul de interactiune cu suportul hardware: - Limbaje masina –...

Teme Laborator POO C++

#include "complex.h" Complex C1,C2; double dist(Complex C1, Complex C2) { double rez=(C2.abs()-C1.abs()); if(rez>=0) return rez; return...

Programare procedurală

int x; // intreg unsigned int a; // intreg fara semn (adica numar natural) char c; //caracter char nume[10]; //sir de caractere float f;...

Te-ar putea interesa și

Testarea Adaptivă ca Factor de Optimizare a Procesului de Instruire în Învățământul Universitar

INTRODUCERE Actualitatea temei. în ultimele trei decenii în lumea educaţiei s-au produs schimbări de ordin principial, ca reacţie la...

Sisteme de securitate în rețele de calculatoare

1. Introducere in retelele cu acces la Internet TIPURI DE RISCURI - VEDERE GENERALA Conectarea unui sistem de calcul la Internet il expune la...

Tipuri de structuri de date în C-C++

Introducere Rareori avem nevoie de programe care prelucreaza date simple(numere întregi, numere reale, caractere). De cele mai multe ori...

Tipuri structurate - Turbo Pascal

APLICATIA 1. Tipuri de date în limbajul PASCAL În limbajele evoluate de programare, fiecare argument, fiecare variabila are un anumit tip bine...

Tablouri și Șiruri de Caractere

Un tablou este o colecţie de variabilede acelaşi tip, apelate cu acelaşi nume. Tablourile sunt plasate într-o zonă de memorie contiguă. Accesul la...

Curs Programare C++

Cap 1. Reprezentarea informaţiilor 1.1 Reprezentarea numerelor întregi în sistemul binar Un număr natural se reprezintǎ ca o colecţie de cifre....

Curs C++

Limbajele C si C++ sunt limbaje de programare de nivel înalt. Limbajul C a aparut în anii 1970 si a fost creat de Dennis Ritchie în...

Șiruri de caractere în C și C++

Functii de intrare / iesire relative la siruri de caractere. Pentru a citi un sir de caractere de la intrarea standard se foloseste functia gets()...

Ai nevoie de altceva?