Sunteți pe pagina 1din 3

Tipuri structurate:

- Tipul tablou (vector matrice)


- Tipul sir de caractere
- Tipul inregistrare – articol -struct

Tipul struct

- Tabloul, sirul de caractere = structure omogene - toate elementele sunt de acelasi tip
- Exista posibilitatea construirii unei structuri neomogene care va retine intr o componenta
campuri de diferite tipuri de date

Declaratia:

struct [nume_structura]

Tip1 lista1_variabile;

Tip2 lista2_variabile;

….

Tipn listan_variabile;

}[lista_variabile];

Obs. Nu pot lipsi in acelasi timp si nume_structura si lista de variabile

Ex:

Examenul de bacalaureat

Struct elev Struct elev


{ {
Char nume[30],prenume[30]; Char nume[30],prenume[30];
Float mr,mm,mp,mg; Float mr,mm,mp,mg;
}; };aux,v[100]
Struct elev aux, v[100];

Elev aux,v[100];
Struct Struct
{ {
Char nume[30],prenume[30]; Char nume[30],prenume[30];
Float mr,mm,mp,mg; Float mr,mm,mp,mg;
};aux,v[100]; };

INCORECT
Definirea tipurilor de date

Typedef= folosit pentru definirea tipurilor de date

Typedef structura_cunoscuta structura_noua;

Ex:

Typedef unsigned long long ULL;

Typedef int intreg;

Typedef unsigned intl UI;

Typedef int[100] Vector; int a[100]  Vector a;

Typedef Vector[100] Matrice; int a[100][100]  Vector a[100];  Matrice a;

Typedef Struct

Char nume[30],prenume[30];

Float mr,mm,mp,mg;

}Elev;

Elev= tip de date nou;

Accesul la o componenta a unei structure

- Folosind caracterul punct asociat variabilei de tip struct


- Componentele unei structure se numesc campuri

Ex:

Aux.nume, aux.prenume, aux.mr, aux.mm, aux.mp=> aux.mg(aux.mr+aux.mm+aux.mp)/3

V[i].nume, v[i].pre …

Citirea / afisarea unei variabile de tip struct

- o variabila de tip struct nu poate fi citita (cin>>aux NOTOK) nu poate fi afisat) (cout<<aux
NOTOK)
- pot fi citite / afisate componentele – campurile structurii
cin>>aux.nume>>aux.pre…
- toate proprietatiile, operatiile si functiile definite de tipurile de date ale campurilor sunt
preluate pentru struct

Structuri imbricate:
Struct date
{
Int luna, an, zi;
};

Struct clasa
{
Char nume[30],pre[30];
Struct date x;
Float h;
}a,v[100];

a.nume = un sir de maxim 30 de caractere


a.pre
a.x.luna, a.x.zi, a.x.an
a.h

Structuri de date lineare

Stiva

Stiva= structura de date din categorie LIFO (last in first out)

-stiva de farfuri

Accesul = varful stivei

Adaugare o farfurie= doar peste cea din varful stivei

Extragere din farfurie => doar cea de la varf

Operatii

- inserare valoare=push
- eliminare valoare = pop
- acces la un element = top
- ??stiva vida, stiva este plina

Ex:

S-ar putea să vă placă și