Administratie | Alimentatie | Arta cultura | Asistenta sociala | Astronomie |
Biologie | Chimie | Comunicare | Constructii | Cosmetica |
Desen | Diverse | Drept | Economie | Engleza |
Filozofie | Fizica | Franceza | Geografie | Germana |
Informatica | Istorie | Latina | Management | Marketing |
Matematica | Mecanica | Medicina | Pedagogie | Psihologie |
Romana | Stiinte politice | Transporturi | Turism |
SDA
6. Un magazin de muzica utilizeaza un program care ajuta la gestionarea Cd-urilor pe care acesta le utilizeaza. Programul utilizeaza un fisier in care sunt pastrate informatii despre CD-uri. Fisierul se numeste 'muzica.txt' si contine linii de forma'
Nume_artist Nume_album Data_lansarii Pret_album Nume_melodia1 Nume_melodia2
Sa se scrie un program care realizeaza urmatoarele:
1. Incarca informatiile din fisier intr-o structura de date de tip lista cu sublista
2. Tipareste ordonat alfabetic dupa nume toti artistii. Sub numele fiecarui artist se vor tiparii toate albumele ca6re le are (si sunt in magazin) in ordine descrescatoare a datei lansarii lor, iar sub numele fiecarui album se vor tipari toate melodiile de pe acel album
3. Citeste numele unui artist de la tastatura si afiseaza toate albumele lui in ordine alfabetica. Se vor afisa si melodiile de pe fiecare album.
4. Citeste numele unui album si afiseaza toti artistii care au albume cu numele identic cu cel introdus.
5. Citeste numele unei melodii, si afiseaza toti artistii, respectiv toate albumele pe care apare acea melodie.
6. Vanzare album. Se sterge acel album, iar daca in urma stergerii albumului, artistul care a compus acel album nu mai are in evidenta nici un alt album, se elimina si artistul.
7. Introducere de la tastatura a unui nou album, impreuna cu toate piesele de pe el.
8. Tiparirea tuturor albumelor din magazin si a artistilor care le-au compus in ordine descrescatoare dupa pret.
9. Citeste o perioada de la tastatura si afiseaza toate albumele, respectiv artistii care au scos albume in acea perioada.
Parasire program. Inainte de iesirea din program se va actualiza fisierul 'muzica.txt' .
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <conio.h>
typedef struct mel
melodie;
typedef struct alb
album;
typedef struct art
artist;
artist *head;
void meniu()
void citeste(char *s)
gets(s);
}
void citeste2(char *s)
}
artist *cautare(artist *lista , char *s)
album *cautare_alb(album *lista , char *s)
melodie * cautare_mel(melodie * head,char * s)
artist* adauga(artist * head, artist *m)
else
if(q1 != q2) /* daca inserarea nu se face la inceputul
listei */ /* introducere 4 */
else /* daca inserarea se face la inceputul listei */
/* introducere 5 */
}
melodie* adauga_mel(melodie *p,melodie *d) //adauga prod in lista ordonata
else
else
if (i!=NULL)
else
}
return(p);
}
album* adauga_alb(album *p,album *d) //adauga prod in lista ordonata
else
else
if (i!=NULL)
else
}
return(p);
}
void introducere()
printf('nDoriti sa adaugati alta melodie[d/n]: '); scanf('%s',cc);
}
strcpy(p->nume_alb,np);
strcpy(p->data,data);
p->pret=pret;
p->urm=NULL;
m->lista=adauga_alb(m->lista,p);
}
printf('nDoriti sa adaugati alt album[d/n]: '); scanf('%s',c);
}
head=adauga(head,m);
}
}
void afisare_mel(melodie *head1)
}
void afisare_alb(album *head)
}
void afisare_art()
}
artist *adauga2(artist *lista, char *s)
else
for(q1 = q2 = lista; q1 != NULL && strcmp(q1->nume_art, s) < 0;
q2 = q1, q1 = q1->next);
if(q1 != NULL && strcmp(q1->nume_art, s) == 0)
else
if(q1 != q2)
else
}
melodie *adauga_mel2(melodie *lista, char *s)
else
for(q1 = q2 = lista; q1 != NULL && strcmp(q1->nume_mel, s) < 0;
q2 = q1, q1 = q1->urm);
if(q1 != NULL && strcmp(q1->nume_mel, s) == 0)
else
if(q1 != q2)
else
}
char* cit_sir(FILE *fis)
}
while(strcmp(aux,'.')!=0);
return s;
artist* incarcare(artist *m)
else
d = m;
while ( (strcmp(d->nume_art, nart)!=0) && (d->next!=NULL))
d=d->next;
p =(album*) malloc(sizeof(album));
p->nume_alb=(char*) malloc(strlen(nalb)+1);
strcpy(p->nume_alb,nalb);
strcpy(p->data,data);
p->lista2=NULL;
p->pret = pr;
do
}
while (strcmp(nmel,'#')!=0);
p->urm = NULL;
d->lista = adauga_alb(d->lista,p);
}
}
while(strcmp(nart,'!')!=0);
}
printf('nEvidanta incarcata!');
return(m);
void afisare4()
}
}
void afisare5()
a=a->next;
}
}
void afisare6()
alb=alb->urm;
}
a=a->next;
}
}
artist *stergere_art(artist *head,char *s)
else
}
album *stergere_alb(album *head,char *s)
else
}
void stergere(artist *head)
else printf('nAlbumul nu a fost gasit!');
}
else printf('nArtistul nu a fost gasit!');
}
void afisare8()
alb=alb->urm;
}
a=a->next;
}
}
else printf('nEroare la succesiune datelor!');
}
void salveaza_art(artist *m,FILE *fout) //salveaza evidenta in fisier
i = i->urm;
}
m=m->next;
}
}
void salvare(artist *m)
salveaza_art(m,fout);
fprintf(fout,'%s','! .');
fclose(fout);
printf('ntEvidenta a fost salvata!n');
return;
}
void main()
}
while(k!=0);
}
Acest document nu se poate descarca
E posibil sa te intereseze alte documente despre:
|
Copyright © 2024 - Toate drepturile rezervate QReferat.com | Folositi documentele afisate ca sursa de inspiratie. Va recomandam sa nu copiati textul, ci sa compuneti propriul document pe baza informatiilor de pe site. { Home } { Contact } { Termeni si conditii } |
Documente similare:
|
ComentariiCaracterizari
|
Cauta document |