Faça um algoritmo em linguagem C que realiza a busca de um aluno da UNINTER no AVA. A busca deve ser realizada utilizando uma estrutura de dados bastante eficiente para esta tarefa.
Defina a estrutura de dados que você irá utilizar para fazer esta implementação e JUSTIFIQUE em texto porque você escolheu ela;
1. Deve-se armazenar o nome do aluno, seu e-mail e seu RU. Para o armazenamento utilize uma estrutura heterogênea de dados. 2. Não é necessário fazer a leitura dos dados dos dados dos alunos manualmente. Você já pode deixar pré-cadastrado os dados no seu código. Cadastre pelo menos uns 10 contatos de alunos na sua estrutura de dados. Um dos contatos deverá ser o seu próprio nome e o seu RU da UNINTER; 3. Em um menu na tela, peça para o usuário digitar um RU. O programa deverá realizar a busca por este RU na estrutura de dados e, caso localize o RU, deverá mostrar o nome correspondente do aluno e o e-mail deste contato. Caso não localize, uma mensagem de erro deve ser apresentada. 4. Para testar o programa, teste a busca com o seu RU e coloque a captura de dela.
achei esse na internet mais ainda não esta rodando!!!!!!!!
#include <stdio.h> #include <string.h> #include <stdlib.h> #include <ctype.h> struct cadastro_de_aluno { char RU[200]; char nome[200]; char email[200]; int vazio,cod; }; struct cadastro_de_aluno alunoCad; //AQUI DECLARO AS FUNÇÕES A SEREM USADAS int verifica_pos(void); int verifica_cod( int cod ); int opt; void list(); void consultaCod (void); void excluirAluno (void); int main(void){ //INICIO DO MAIN int i,Opcao,OpcaoAluno,posicao,retorno; int codaux; do { printf("1 - Cadastrar Novo Aluno\n"); printf("2 - Aluno\n"); printf("3 - Alterar Aluno\n"); printf("4 - Excluir Aluno\n"); printf("5 - Sair\n"); printf(" Selecione uma opcao por favor: "); scanf("%d", &Opcao); getchar(); if (Opcao == 1) { printf("voce selecionou a opcao 1 - Cadastrar Novo Aluno\n"); posicao=verifica_pos(); if ( posicao != -1 ) { printf("\nEntre com um codigo de 1 a 10 para seu cadastro: \n"); scanf("%d",&codaux);fflush(stdin); retorno = verifica_cod( codaux );} else printf("\nNao e possivel realizar mais cadastros!\n"); break; } else if (Opcao == 2) { system("cls"); do{ printf("voce selecionou a opcao 2 - Alunos\n\n"); printf("1 - Pesquisar aluno por codigo\n"); printf("2 - Listar todos os alunos\n"); printf("3 - Voltar ao menu principal\n"); printf("Selecione uma opcao por favor: "); scanf("%d", &OpcaoAluno); getchar(); if(OpcaoAluno == 1){ consultaCod(); } else if(OpcaoAluno == 2){ list(); } else if(OpcaoAluno == 3){ printf("voce selecionou voltar ao menu principal, pressione ENTER para continuar"); getchar(); system("cls"); } else printf("Opcao Invalida\n\n"); }while(OpcaoAluno =!3 || OpcaoAluno > 3 || OpcaoAluno < 0 || OpcaoAluno == 0); } else if (Opcao == 3) { printf("voce selecionou a opcao 3 - Alterar Aluno\n"); } else if (Opcao == 4) { printf("voce selecionou a opcao 4 - Excluir Aluno\n"); excluirAluno(); } else if (Opcao == 5) { { printf("voce selecionou a opção 5 - Sair\n"); } } else{ printf("Opcao invalida, favor pressione enter para voltar ao menu principal"); getchar(); system("cls"); } } while (Opcao != 5 || Opcao < 5); } // FIM DO MAIN void list(){ // Lista os usuarios cadastrados. int i,j; for(i=0;i<200;i++){ if(log[i].cod!=NULL){ printf("\nCodigo: %d \nNome: %s\nRU: %s\n email: \n\n", log[i].cod,log[i].nome,log[i].RU,log[i]. email,log[i]); } } printf("Pressione enter para volta ao menu principal"); getchar(); system("cls"); } //FIM DO LIST void cadastroP(int cod, int pos){ //Cadastro das pessoas int i; do{ pos = verifica_pos(); log[pos].cod = cod; printf("\nDigite o RU: "); gets(log[pos].RU); printf("\nDigite o nome: "); gets(log[pos].nome); printf("\nDigite o email: "); gets(log[pos]. email); log[pos].vazio = 1; //printf("\nDigite enter para efetuar novo cadastro ou qualquer outra tecla para voltar ao menu principal"); //scanf("%d", &opt); opt ==1; getchar(); }while(opt==1); system("cls"); main(); } // FIM DO CADASTRO DE PESSOAS int verifica_pos( void ) //VERIFICADOR DA POSIÇÃO { int cont = 0; while ( cont <= 10 ) { if ( log[cont].vazio == 0 ) return(cont); cont++; } return(-1); } // FIM DO VERIFICADOR int verifica_cod( int cod ) // VERIFICADOR DE CÓDIGO { int cont = 0; while ( cont <= 10 ) { if ( log[cont].cod == cod ) return(0); cont++; } return(1); } cont++; if ( cont > 10 ){ printf("\nCodigo nao encontrado, pressione enter para volar ao menu principal\n"); getchar(); system("cls"); } } // FIM DA FUNÇÃO CONSULTAR void excluirAluno(void) // EXCLUI ALUNO { int cod, cont = 0; char resp; printf("\nEntre com o codigo do registro que deseja excluir: \n"); scanf("%d", &cod ); while ( cont <= 10 ) { if ( log[cont].cod == cod ) { if (log[cont].vazio == 1 ) { printf("\nCodigo: %d \nNome: %s\nRU: %s\n email: %s\n\n", log[cont].cod,log[cont].nome,log[cont].RU,log[cont]. email,); getchar(); printf("\nDeseja realmente exlucir? s/n: "); scanf("%s",&resp); if ( ( resp == 'S' ) || ( resp == 's' ) ) { log[cont].vazio=0; log[cont].cod = NULL; printf("\nExclusao feita com sucesso\n"); break; } else { if ( ( resp == 'N' ) || ( resp == 'n' ) ) { printf("Exclusao cancelada!\n"); break; } } } } cont++; if ( cont > 10 ) printf("\nCodigo nao encontrado\n"); } system("pause"); system("cls"); }
Para escrever sua resposta aqui, entre ou crie uma conta
Compartilhar