Laboratoare C++ (SDA)

Laborator
9/10 (2 voturi)
Conține 3 fișiere: doc
Pagini : 38 în total
Cuvinte : 4586
Mărime: 96.45KB (arhivat)
Puncte necesare: 0
Profesor îndrumător / Prezentat Profesorului: Nachila Catalin
Laboratoarele 3,5,6

Cuprins

  1. 1.1. Crearea şi afişarea unei liste 2
  2. 1.2. Ştergerea de noduri din listă 4
  3. 1.3. Inserarea de noduri în listă 5
  4. 1.3.1. Înserarea la începutul listei 5
  5. 1.3.2. Înserarea la sfârşitul listei 6
  6. 1.3.3. Înserarea unui nod după un alt nod 6
  7. 1.4. Programul complet 8

Extras din laborator

1.1. Crearea şi afişarea unei liste

Exerciţiul 1. Să se scrie programul pentru crearea unei liste simplu înlănţuite cu preluarea datelor de la tastatură. Sfârşitul introducerii datelor este marcat standard (CTRL+Z). După creare, se va afişa conţinutul listei apoi se va elibera memoria ocupată.

#include<stdio.h>

#include<conio.h>

#include<alloc.h>

#define NEW (NOD*)malloc(sizeof(NOD));

struct lista

{

int info;

lista *next;

};

typedef struct lista NOD;

NOD* creare()

{

NOD *prim,*ultim,*q;

int nr;

printf(" primul nr=");

scanf("%i",&nr); // se citeşte primul număr

prim=(NOD*)malloc(sizeof(NOD));

prim->info=nr; // se creează primul nod

prim->next=NULL;

ultim=prim; // se creează ultimul nod

printf("n urmatorul nr sau tastati CTRL+Z pentru iesire) = ");

scanf("%i",&nr); // se citeşte al doilea număr

while(!feof(stdin)) // atâta timp cât nu introducem CTRL+Z

{

q=(NOD*)malloc(sizeof(NOD));

q->info=nr; // se creează nodul următor

q->next=NULL;

ultim->next=q;

ultim=q; // se creează ultimul nod

printf("n urmatorul nr sau tastati CTRL+Z pentru iesire)= ");

scanf("%i",&nr); // se citeşte numărul următor

}

return prim;

}

void afis(NOD* prim)

{

printf("n");

printf("n Lista este");

while(prim!=NULL) // atâta timp cât p este diferit de NULL

{

printf("t n%i",prim->info); // se afişează nodul curent

prim=prim->next; // se trece la următorul nod

}

}

void stergere (NOD* prim)

{

NOD *p;

while(prim) // atâta timp cât prim este diferit de NULL

{

p=prim; // p devine primul nod

prim=prim->next; // prim devine următorul nod

free(p); // se eliberează nodul curent

}

}

void main()

{

NOD *prim;

int a,b,c,d,e,f,g;

clrscr();

// Creare

prim=creare();

afis(prim);

// Eliberare memorie

stergere(prim);

getch();

}

Preview document

Laboratoare C++ (SDA) - Pagina 1
Laboratoare C++ (SDA) - Pagina 2
Laboratoare C++ (SDA) - Pagina 3
Laboratoare C++ (SDA) - Pagina 4
Laboratoare C++ (SDA) - Pagina 5
Laboratoare C++ (SDA) - Pagina 6
Laboratoare C++ (SDA) - Pagina 7
Laboratoare C++ (SDA) - Pagina 8
Laboratoare C++ (SDA) - Pagina 9
Laboratoare C++ (SDA) - Pagina 10
Laboratoare C++ (SDA) - Pagina 11
Laboratoare C++ (SDA) - Pagina 12
Laboratoare C++ (SDA) - Pagina 13
Laboratoare C++ (SDA) - Pagina 14
Laboratoare C++ (SDA) - Pagina 15
Laboratoare C++ (SDA) - Pagina 16
Laboratoare C++ (SDA) - Pagina 17
Laboratoare C++ (SDA) - Pagina 18
Laboratoare C++ (SDA) - Pagina 19
Laboratoare C++ (SDA) - Pagina 20
Laboratoare C++ (SDA) - Pagina 21
Laboratoare C++ (SDA) - Pagina 22
Laboratoare C++ (SDA) - Pagina 23
Laboratoare C++ (SDA) - Pagina 24
Laboratoare C++ (SDA) - Pagina 25
Laboratoare C++ (SDA) - Pagina 26
Laboratoare C++ (SDA) - Pagina 27
Laboratoare C++ (SDA) - Pagina 28
Laboratoare C++ (SDA) - Pagina 29
Laboratoare C++ (SDA) - Pagina 30
Laboratoare C++ (SDA) - Pagina 31
Laboratoare C++ (SDA) - Pagina 32
Laboratoare C++ (SDA) - Pagina 33
Laboratoare C++ (SDA) - Pagina 34
Laboratoare C++ (SDA) - Pagina 35
Laboratoare C++ (SDA) - Pagina 36
Laboratoare C++ (SDA) - Pagina 37
Laboratoare C++ (SDA) - Pagina 38

Conținut arhivă zip

  • 03[1]. Liste simplu inlantuite (rezumat studenti).doc
  • 05[1]. Stive (rezumat studenti).doc
  • 06[1]. Arbori (rezumat studenti).doc

Alții au mai descărcat și

Proiectarea unei Baze de Date

I. Principalele cerinte impuse de Serviciul de Ambulanta Judetean sunt urmatoarele : activitate acordarea serviciilor medicale de urgenta...

Probleme Rezolvate Pascal C++ și Oracle

1. Din Word - meniul Inserare - Imagine - Diagrama, se schimba datele in foaia Excel, apoi se salveaza. O cursa trebuie sa aiba una sau mai multe...

Liste Alocate Dinamic

#include <stdio.h> #include <malloc.h> struct lista{ int info_util; lista *next;}; void afisare(lista *l) { while (l)...

C++

Un prim exemplu de program C++: #include <iostream.h> void main { int a; cout << "Dati un numar\n"; cin >> a; cout << "Ati tastat numarul "...

Probleme C++ Rezolvate

Problema 1: cmmdc(a, b) #include<stdio.h> #include<conio.h> //algoritmul lui Euclid //cel mai mare divizor comun pentru doua numere strict...

Limbajul C++ fundamente - aplicații

PROBLEMA 1 Sa se verifice daca un numar intreg preluat de la terminal este prim. #include<iostream.h> #include<math.h> void main () { int n,...

Curs 1 - PHP

1. INTRODUCERE - Ce este PHP ? PHP este abrevierea de la PHP – Hypertext Preprocessor (similar cu GNU ce reprezinta abrevierea de la GNU’s Not...

Curs 2 - PHP

Variabila reprezinta un identificator la o locatie de memorie si se foloseste pentru stocarea, prelucrarea si stergerea datelor. Variabilele in...

Te-ar putea interesa și

Structuri de Date și Algoritmi

1 Tema:Implimentarea tipului abstract de date.Tabloul de structuri. 2 Sarcina:De implimentat tipul abstract de date,tablou de structuri si de...

Magistrala SPI

1. Introducere 1.1 Scopul lucrării Scopul lucrării este de a familiariza studenții cu aspectele practice de baza pentru utilizarea în aplicații de...

Laborator SDA

LISTE SIMPLU ÎNLANTUITE 1. Continutul lucrarii În lucrare sunt prezentate operatiile importante asupra listelor simplu înlantuite si...

Structuri de Date și Algoritmi

Lucrarea 1 Evaluarea si masurarea timpului de executie al unui algoritm 1.Definitia unui tip de date abstract - TDA Un TDA este un model...

Laboratoare SPME

Introducere Programul Mitsubishi ALVLS este destinat scrierii programelor de aplicatii pentru automatele Mitsubishi Alpha. Acest program...

Pediatrie

Curs 1 Pediatrie Componentele pediatriei 1. pediatrie clinica->studiul bolilor 2. pediatrie preventiva->prevenirea bolilor,pastrarea sanatatii...

Structuri de Date și Algoritmi

De ce SDA? Structuri de date : metode de organizare a unei mari cantitati de informatie Analiza algoritmilor : estimarea timpului de executie si...

Matematică discretă

Lucrarea de laborator Nr. 1 Tema:Pastrarea grafurilor in memoria calculatorului Scopul lucrarii: Studierea metodelor de definire a unui...

Ai nevoie de altceva?