Ir ao conteúdo
  • Cadastre-se

Heber Nascimento

Membro Júnior
  • Posts

    2
  • Cadastrado em

  • Última visita

Reputação

2
  1. muito obrigado@giu_d, era isso que estava errando.
  2. Estou fazendo uma tarefa para faculdade, estou começando a programar e não sei muito como fazer. A ideia do tarefa é: * Uma função separada para calcular o imc, ela recebe dois valores em ponto flutuante (peso e altura) e retorna um valor (o imc) em ponto flutuante. * Uma estrutura chamada Aluno onde será armazenado nome, e-mail, peso e altura. * Um vetor de 20 posições que armazenará as estruturas. * Uma tela de menu, que terá as seguintes opções: 1. Cadastra aluno (apenas 1, escolhendo a posição de 1 a 20). 2. Listar alunos. 3. Apagar aluno (pode apagar pela posição na lista). 4. Listar IMC de alunos (lista todos os nomes, com o valor do IMC e a condição para o IMC de acordo com a tabela acima). 0. Sair. Estou com dificuldades nos casos 2 e 3. O que é que esta faltando para "apagar" o conteúdo dos array na posição escolhida? Até agora o que tenho é isso: #include <stdio.h> #include <stdlib.h> #include <string.h> struct cadastro { char nome[30]; char email[15]; float peso, alt; }; struct cadastro ficha [20]; int main() { int op,i,f=0,s=0; char exCont[30]; /* for (i = 0; i < 20; i++) { sprintf(ficha[i].nome,""); sprintf(ficha[i].email,""); }*/ do{ printf("Cadastro\n"); printf("1 - Registrar novo aluno\n"); printf("2 - Excluir registro\n"); printf("3 - Editar registro\n"); printf("4 - Listar registros\n"); printf("5 - Buscar registro\n"); printf("0 - Sair\n"); scanf("%d", & op); switch (op) { case 1: printf("Escolha a posicao de 0 a 19 para a adicionar : "); scanf("%d", &i); if(i>=20) { printf("posicao invalida! Refaca a operacao\n"); i=0; } else { printf("posicao: %d\n",i); printf("Digite o nome:\n"); scanf("%s", ficha[i].nome); printf("Digite o telefone:\n"); scanf("%s", ficha[i].email); printf("Digite o peso:\n"); scanf("%f", & ficha[i].peso); printf("Digite a altura:\n"); scanf("%f", & ficha[i].alt); system("cls"); printf("\n\nRegistro adicionado!!\n\n"); } break; case 2: printf("Digite a posicao do registro que deseja excluir\n"); scanf("%d",& i); if (i>=0 || i <=19) { ficha[i].nome == ""; ficha[i].email == ""; ficha[i].peso = 0; ficha[i].alt = 0; printf("\n\nRegistro excluirdo!!\n\n"); } else { printf("posicao invalida"); } break; case 3: break; case 4: for(i=0; i<20; i++) { printf("%d: %s, %s\n",i,ficha[i].nome,ficha[i].email); } break; case 5: printf("Qual nome do aluno voce deseja Procurar:\n"); scanf("%s", exCont); i=1; while(f == 0 || i <= 15) { if (strcmp (exCont, ficha[i].nome) == 0) { system("cls"); printf("\n\n"); printf(ficha[i].nome); printf("\n"); printf(ficha[i].email); printf("\n"); f = 1; } i++; } break; case 0: s = 1; break; default: printf("Opcao invalida\n"); // system("cls"); break; } } while (s == 0); return (0); }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!