wilianofc 0 Denunciar post Postado Junho 16, 2011 Ola pessoal to precisando calcular a media das pessoas cadastrada numa agenda mas nao to conseguindo fazer isso alguem pode me ajudar ?? segue ate onde eu consegui fazer !! Agradeço desde já : D #include<string.h> #include<conio.h> #include<stdio.h> struct agenda { int cod; char nome[30]; char datanasc[12]; char rua[10]; char numero[5]; char cidade[40]; int tel; int salario; int vazio; //VAZIO = 0 e DISPONIVEL = 1. } registros[100]; void cadastrar(int cod, int pos); void consultar(); int verifica_pos(); void zerar(); int verifica_cod(int cod); void excluir(); void consultar_exc(int cod); main() { zerar(); int op=0,retorno,codaux,posicao; int validacod=0; while(op!=4){ printf("\n\n\t\t\t\t** AGENDA **\n\n\nMENU\n\n1 - Cadastrar\n2 - Consultar\n3 - Excluir\n4 - Sair\n\nOpcao: "); scanf("%d",&op); fflush(stdin); switch(op) { case 1: { // CADASTRAR posicao=verifica_pos(); if (posicao!=-1) { validacod = posicao + 1; //com a resposta da funcao verifica_pos eu adiciono 1 e gero o proximo codigo valido printf("\nCodigo: %d",validacod); retorno=verifica_cod(validacod); if (retorno==1) cadastrar(validacod,posicao); else printf("\nCodigo ja existente !\n"); } else printf("\nA agenda esta cheia !\n"); break; } case 2: { // CONSULTAR consultar(); break; } case 3: { excluir(); break; } case 4: { printf("\n\nFinalizado !"); break; } } } getch(); } void cadastrar(int cod, int pos) { pos=verifica_pos(); registros[pos].cod=cod; system("cls"); printf("\nCodigo: %d\n", cod); printf("\nNome: "); gets(registros[pos].nome); printf("\nData de Nascimento: "); gets(registros[pos].datanasc); printf("\nRua: "); gets(registros[pos].rua); printf("\nNumero: "); gets(registros[pos].numero); printf("\nCidade: "); gets(registros[pos].cidade); printf("\nTelefone: "); scanf("%d",®istros[pos].tel); printf("\nSalario: "); scanf("%d",®istros[pos].salario); registros[pos].vazio=1; system("cls"); printf("\nCadastro Realizado com Sucesso !\n\n"); system("pause"); system("cls"); } void consultar() { int cont=0, cod; printf("\nEntre com o codigo: "); scanf("%d",&cod); while(cont<=100) { if (registros[cont].cod==cod) { if (registros[cont].vazio==1) { system("cls"); system("cls"); printf("\nCodigo: %d", cod); printf("\nNome: %s",registros[cont].nome); printf("\nData de Nascimento: %s",registros[cont].datanasc); printf("\nRua: %s",registros[cont].rua); printf("\nNumero: %s",registros[cont].numero); printf("\nCidade: %s",registros[cont].cidade); printf("\nSalario: %d",registros[cont].salario); printf("\nTelefone: %d\n",registros[cont].tel); system("pause"); system("cls"); break; } } cont++; if (cont>100) { printf("\nCodigo nao encontrado !\n"); system("pause"); system("cls"); } } } int verifica_pos() { int cont=0; while (cont<=100) { if (registros[cont].vazio==0) return(cont); cont++; } return(-1); } void zerar() { int cont; for (cont=0;cont<=100;cont++) registros[cont].vazio=0; } int verifica_cod(int cod) { int cont=0; while (cont<=100) { if (registros[cont].cod==cod) return(0); cont++; } return(1); } //consulta para a exclusao void consultar_exc(int cod) { int cont=0; while(cont<=100) { if (registros[cont].cod==cod) { if (registros[cont].vazio==1) { printf("\nDeseja excluir esse registro ?\n"); printf("\nCodigo: %d", cod); printf("\nNome: %s",registros[cont].nome); printf("\nData de Nascimento: %s",registros[cont].datanasc); printf("\nRua: %s",registros[cont].rua); printf("\nNumero: %s",registros[cont].numero); printf("\nCidade: %s",registros[cont].cidade); printf("\nSalario: %d",registros[cont].salario); printf("\nTelefone: %d",registros[cont].tel); break; } } cont++; if (cont>100) printf("\nCodigo nao encontrado !\n"); } } void excluir() { int cod, cont=0; system("cls"); printf("\nEntre com o codigo do registro que deseja excluir - 999 para sair\n"); scanf("%d",&cod); system("cls"); if(cod !=999) { consultar_exc(cod); int confirma = 55; printf("\n\nDigite\n999 - para cancelar\n1 - para excluir\nOpcao: "); scanf("%d", &confirma); system("cls"); switch(confirma) { case 999: system("cls"); excluir(); default: system("cls"); printf("\nOpcao inválida\n"); system("pause"); system("cls"); excluir(); } if(confirma == 1) { while (cont<=100) { if (registros[cont].cod==cod) { if (registros[cont].vazio==1) { registros[cont].vazio=0; system("cls"); printf("\nExclusao feita com sucesso !\n"); system("pause"); system("cls"); break; } cont++; if (cont>100) { system("cls"); printf("\nCodigo nao encontrado !\n"); system("pause"); system("cls"); } } } } } } Compartilhar este post Link para o post Compartilhar em outros sites
guidjos 65 Denunciar post Postado Junho 17, 2011 Bem-vindo ao fórum. Tenho algumas sugestões que contribuirão pra que alguém tente ler seu código e sua pergunta: 1. Crie um título que descreva sua dúvida brevemente. Não me interessa saber em que circunstâncias a dúvida surgiu. Para mim e para os outros que responderão suas perguntas, tanto faz se você estava fazendo um trabalho de faculdade ou chupando picolé. 2. Não use negrito no post todo. Ele deve ser usado para enfatizar pequenos trechos de seu post, aos quais você deseja chamar mais atenção. O mesmo vale para itálico. 3. Use a tag "code" para postar código fonte. 4. Passe estes 4 itens aos seus amigos de faculdade. Compartilhar este post Link para o post Compartilhar em outros sites