Ir para conteúdo
Fórum Script Brasil

augusto cezar

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Tudo que augusto cezar postou

  1. Por favor me ajudem !!! tenho ate ad 20h pra entregar esse trabalho #include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct { int dia; int mes; int ano; }tdata; typedef struct { char nome[80],titulo[80],gene_mp3[80]; tdata dt_lanca; }tcd; int menu(); int preenche_cd(tcd cd[],int qt); int carrega_cd (tcd v_cd[], int qtd); void busca_nome_exibe_tit(tcd pcd[],int qtd); void busca_genero_quant(tcd pcd[],int qtd); void busca_relacao_nome_titulo(tcd pcd[],int qtd); void busca_ano (tcd pcd[],int qtd); void exibe_cd(tcd pcd); void ordena_nome(tcd vet[], int qtpos); int salva_cd (tcd v_cd[],int qt); int main(void) { tcd *cd; int op,qtd; printf("Quantos cds voce quer ter na sua tabela?"); scanf("%d",&qtd); preenche_cd(cd,qtd); carrega_cd(cd,qtd); while(op=menu()!=5) { switch(op) { case 1: busca_nome_exibe_tit(cd,qtd); break; case 2: busca_genero_quant(cd,qtd); break; case 3: busca_relacao_nome_titulo(cd,qtd); break; case 4: busca_ano (cd,qtd) ; break; case 5: ordena_nome(cd,qtd); break; } return 1; } free(cd); } int preenche_cd(tcd cd[],int qt) { tcd *vt_cd; int i; vt_cd=(tcd*)malloc(sizeof(tcd)*qt); if(vt_cd==NULL) { puts("Não tem área de memmoria"); return 1; } for(i=0;i<qt;i++) { cd=vt_cd; } } int carrega_cd (tcd v_cd[],int qt) { int i; FILE*arq; if ((arq=fopen("localcd.dat","rb"))==NULL) { printf("Erro na abertura do arquivo"); return; } fread(v_cd,sizeof(tcd),qt,arq); fclose(arq); } void busca_nome_exibe_tit(tcd pcd[],int qtd) { fflush(stdin); int i,qtdval; qtdval=0; char proc_nome[80]; printf("Digite o nome a ser procurado"); gets(proc_nome); for(i=0;i<qtd;i++) { if((strcmpi(pcd.nome,proc_nome))==0) { printf("Titulo do cd relacionado ao Nome do cantor"); puts(pcd.titulo); qtdval++; } } if(qtdval==0) printf("não existe titulo relaciodo ao nome %c",proc_nome); } int menu (void) { int opt; puts("1 - Buscar pelo nome e os titulos serao mostrados "); puts("2 - Buscar pelo genero mostra a quantidade de cds"); puts("3 - Buscar pelo nome e um titulo mostrar se existe ou não"); puts("4 - Busca pelo ano sera mostrado toda as informacoes do cd neste ano"); puts("5 - Ordena tabela de cd por nome"); puts("Digite qual o tipo de busca que deseja:"); scanf("%d", &opt); return opt; } void busca_genero_quant(tcd pcd[],int qtd) { int i,qtdval; char proc_gene[80]; qtdval=0; fflush(stdin); printf("Digite o genero a ser procurado"); gets(proc_gene); for(i=0;i<qtd;i++) { if((strcmpi(pcd.gene_mp3,proc_gene))==0) qtdval++; } if(qtdval==0) printf("não existe titulo relaciodo ao nome %c",proc_gene); else printf("São %d cds relacionados com o genero %c",qtdval,proc_gene); } void busca_relacao_nome_titulo(tcd pcd[],int qtd) { int i,qtdval=0; char proc_nome[80],proc_titulo[80]; fflush(stdin); printf("Digite o nome a ser procurado"); gets(proc_nome); printf("Digite o titulo a ser procurado"); gets(proc_titulo); for(i=0;i<qtd;i++) { if((strcmpi(pcd.nome,proc_nome))==0) if((strcmpi(pcd.titulo,proc_titulo))==0) qtdval++; } if(qtdval==0) printf("não existe cd relaciodo ao nome %c e ao titulo %c",proc_nome,proc_titulo); else printf("São %d cds relacionados com o genero %c",qtdval,proc_nome); } void busca_ano (tcd pcd[],int qtd) { int i,qtdval=0,anocd; fflush(stdin); printf("Digite o ano do carro"); scanf("%d",&anocd); for(i=0;i<qtd;i++) { if(pcd.dt_lanca.ano==anocd) { exibe_cd(pcd); qtdval++; } } if(qtdval==0) printf("não existe cd relaciodo ao ano %d",anocd); } void exibe_cd(tcd pcd) { fflush(stdin); puts(pcd.nome); puts(pcd.titulo); puts(pcd.gene_mp3); printf("pcd.data.dia"); printf("pcd.data.mes"); printf("pcd.data.ano"); } void ordena_nome(tcd vet[], int qtpos) { int ultroca,fimdesord,i; tcd aux; fflush(stdin); for(fimdesord=qtpos-1;fimdesord>0;fimdesord=ultroca) { ultroca=0; for(i=0;i<fimdesord;i++) { if((strcmpi(vet.nome,vet[i+1].nome))>0) { aux=vet; vet=vet[i+1]; vet[i+1]=aux; ultroca=i; } } } int salva_cd (tcd v_cd[],int qt) { int i,test=0; FILE*arq; if ((arq=fopen("localcd.dat","wb"))==NULL) { printf("Erro na abertura do arquivo"); return; } test=fwrite(v_cd,sizeof(tcd),qt, arq); if(test!=qt) { printf("Erro ao salvar o arquivo"); fclose(arq); return; } fclose(arq); } }
×
×
  • Criar Novo...