- O programa deve ser capaz de cadastrar palestras que serao apresentados no evento principal.Estes eventos devem conter o nome da palestra a data e a hora da apresentacao, e o nome do palestrante. A palestra deve estar associado a um evento principal(congresso por ex) e não pode ser cadastrado separadamente.
- O programa deve ser capaz de cadastrar um participante em um evento principal. O cadadastro de participantes deve conter a informacoao nome, cpf, rg.Um participante so podera ser cadastrado se ainda existir vagas.
- Deve tambem oferecer uma opcao de visualizar os eventos principais cadastrados, as palestras de um determinado evento, quais os participantes estao cadastrado em um evento e a quantidade de vagas.
- Deletar os cadastros efetuados nos itens acima.
Bem o projeto pede isso
1: Eu já fiz a parte de cadastro de evento, palestra, e participante, com STRUCTS, so não sei como fazer para que a palestra não seja apenas criada ligada com um evento eu tentei fazer so não sei se esta certo.
2: Como eu poderia visualizar isso que estao armazenados.
3: E deletar.
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <conio.h> struct evento { char nome[50]; char data[15]; char datafim[15]; int qtdepart; }e; struct participante { char nome[50]; char cpf[20]; float rg; }p[2]; struct palestra { char nome[50]; char palestrante[50]; char data[15]; char hora[8]; struct evento ev; }pa[2]; void menuPrincipal(); void CadastrarEvento(); void CadastrarPalestra(); void CadastrarParticipante(); void VisualizarEvento(); int main() { int contadorparti=0; menuPrincipal(); getch(); return 1; system("pause"); system("cls"); } void menuPrincipal() { char opcao; int saida = 1; do { printf("===========================TELA PRINCIPAL==================================="); printf("\n1: Cadastrar Evento.\n"); printf("2: Cadastrar Palestra.\n"); printf("3: Cadastrar Participante.\n"); printf("4: Visualizar Evento.\n"); printf("Digite a Opcao:"); opcao = getche(); switch(opcao) { case '1': CadastrarEvento(); break; case '2': CadastrarPalestra(); break; case '3': CadastrarParticipante(); break; case '4': VisualizarEvento(); break; } } while (saida); } void CadastrarEvento() { char confirmar; FILE *arq; printf("\n===========================CADASTRAR EVENTO================================="); fflush(stdin); printf("\nNome do Evento: "); gets(e.nome); fflush(stdin); printf("\nData do Evento Inicial: "); gets(e.data); fflush(stdin); printf("\nData do Final do Evento: "); gets(e.datafim); fflush(stdin); printf("\nQuantidade maxima de Participantes: "); scanf("%d",&e.qtdepart); fflush(stdin); do { printf("\n\nDeseja Confirmar o cadastro do Evento[s\\n]: "); confirmar = getche(); } while ((confirmar != 's') && (confirmar != 'n')); if (confirmar == 's') { arq = fopen("evento.txt", "a+"); if (!arq) { printf("Error 432423."); } else { fwrite(&e, sizeof(e), 1, arq); fclose(arq); } } } void CadastrarParticipante() { char confirmar; FILE *arq; printf("\n=========================CADASTRAR PARTICIPANTE=========================="); fflush(stdin); printf("\nNome do Participante: "); gets(p[0].nome); fflush(stdin); printf("\nCPF: "); gets(p[0].cpf); fflush(stdin); printf("\nRG: "); scanf("%f",&p[0].rg); fflush(stdin); do { printf("\n\nDeseja Confirmar o cadastro do Participante[s\\n]: "); confirmar = getche(); } while ((confirmar != 's') && (confirmar != 'n')); if (confirmar == 's') { arq = fopen("part.txt", "a+"); if (!arq) { printf("Error 432423."); } else { fwrite(&p, sizeof(p), 1, arq); fclose(arq); } } } void CadastrarPalestra() { char confirmar; FILE *arq; printf("\n========================CADASTRAR PALESTRA==============================="); fflush(stdin); printf("\nNome do Palestra: "); gets(pa[0].nome); fflush(stdin); printf("\nNome do Palestrante: "); gets(pa[0].palestrante); fflush(stdin); printf("\nData da Palestra: "); gets(pa[0].data); fflush(stdin); printf("\nHora da Palestra: "); gets(pa[0].hora); fflush(stdin); printf("\nEvento: "); gets(pa[0].ev.nome); fflush(stdin); do { printf("\n\nDeseja Confirmar o Cadastro da Palestra[s\\n]: "); confirmar = getche(); } while ((confirmar != 's') && (confirmar != 'n')); if (confirmar == 's') { arq = fopen("palestra.txt", "a+"); if (!arq) { printf("Error 432423."); } else { fwrite(&pa, sizeof(pa), 1, arq); fclose(arq); } } } void VisualizarEvento() { char comparaevento[50]; printf("\nDigite o evento que procura:\n"); gets(comparaevento); if (!strcmp(comparaevento, e.nome)) { printf("\n",e.nome); printf("\n",e.data); printf("\n",e.datafim); printf("\n",e.qtdepart); }else { printf("Tente Novamente. não Existi esse Evento."); } }
Essa funcao de visualizar que fiz nao funciona.
Desde ja grato