Documente Academic
Documente Profesional
Documente Cultură
al Republicii Moldova
RAPORT
despre lucrarea de laborator Nr. 6
la Structuri de Date si Algoritmi
Chişinău – 2020
Mersul lucrării:
Ex 1
Codul:
#include <stdio.h>
#include<string.h>
#include<stdlib.h>
int a[max];
int top = -1;
int x;
int min = 1000;
int isempty() ;
int isfull() ;
void introducere() ;
int eliminare() ;
void afisare() ;
int main()
{
int ch;
do
{
printf("\n 1. introducere");
printf("\n 2. eliminare");
printf("\n 3. afisare");
printf("\n 4. minimul");
printf("\n 5. Iesire\n");
printf(">>> ");
scanf("%d",&ch);
switch (ch) {
case 1:
introducere();
break;
case 2:
eliminare();
break;
case 3:
afisare();
break;
case 4:
minimul();
break;
case 5:
return 0;
default:
printf("Alegere invalida");
break;
}
}while(ch!=4);
return 0;
}
int isfull(){
if ( (top == max-1))
{
return 1;
}
else
{
return 0;
}
}
int isempty(){
if((top==-1))
{
return 1;
}
else
{
return 0;
}
}
void introducere(){
if (isfull())
{
printf("Stiva e plina");
}
else
{
printf("Introdu element: ");
scanf("%d",&x);
if(x < min){
min = x;
}
top++;
a[top] = x;
}
}
int eliminare(){
if(isempty())
{
printf("Stiva e goala");
exit(0);
}
else{
x = a[top];
printf("%d",x);
top--;
}
}
void afisare()
{
if(isempty())
{
printf("nu este nimic de afisat");
exit(0);
}
else
printf("Stiva: \n");
{
int i;
for(i=0;i<top+1;i++)
{
printf("%d \n",a[i]);
}
}
}
void minimul(){
printf("Minimul este: %d", min);
}
Output:
Ex 2:
Codul:
#include <stdio.h>
#include <stdlib.h>
struct node {
char nume[30];
char prenume[30];
int anNastere;
char adresa[30];
float notaMedie;
char specialitate[2];
struct node *next;
};
int main() {
struct node *head;
struct node *one = NULL;
struct node *two = NULL;
struct node *three = NULL;
struct node *ch = NULL;
int n;
one->next = two;
two->next = three;
three->next = NULL;
head = one;
while(1){
printf("Alege operatia: \n1.Introducerea listei\n2.Afisarea listei\n3.Introducere Element
Inceput\n4.Introducere Element Sfarsit\n5.Introducere element Intre 2 Noduri\n6.Stergere
Element\n7.Cea mai mare nota medie\n8.EXIT\n");
scanf("%d", &n);
getchar();
switch(n){
case 1: introducere(head);
break;
case 2: parcurgereSiAfisare(head);
break;
case 3: front(head);
break;
case 4: end(head);
break;
case 5: printf("Introdu elementul dupa care sa inserezi nodul: ");
scanf("%d", &ch);
after(ch);
break;
case 6: printf("Introdu elementul dupa care sa stergi nodul: ");
scanf("%d", &ch);
del(ch);
break;
case 7: notaMedieMax(head);
case 8: return 0;
default: break;
}
}
return 0;
}
Output(partea 2):
Concluzie:
În aceasta lucrare de laborator am lucrat cu functia Struct în C și am rezolvat un exercițiu în care am
folosit și sortari.