quando executo ele roda, ai para quando escolho o numero do cadastro dentro do imc :/
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
#include<locale.h>
#define MAX 20
struct aluno
{
char nome[30];
char email[30];
double peso;
float altura;
float IMC;
int codigo;
};
struct aluno valuno[20];
void lis(){
int i;
for(i = 0; i< MAX; i++){
printf(" %d: %s\n\n", i, valuno.nome);
}
}
void ex(){
int codigo;
printf (" Digite o numero de cadastro para apagar ");
scanf("%d", &codigo);
sprintf(valuno[codigo].nome," ");
}
int imc()
{
int i, codigo;
char nome[30];
float altura=0, imc=0;
double peso=0;
for(i = 0; i< MAX; i++){
printf(" %d: %s\n\n", i, valuno.nome);
}
printf(" Digite o codigo do aluno para visualizar o IMC:");
scanf("%f", codigo);
peso = valuno[codigo].peso;
altura = valuno[codigo].altura;
imc = peso/(altura*2);
if (imc < 18){
printf("O seu IMC é %.2f e esta abaixo do peso\n", imc);
}
if (imc == 18,5 && imc <=25){
printf ("O seu IMC é %.2f e voce no peso ideal\n", imc);
}
if (imc == 25 && imc <=30){
printf("O seu IMC é %.2f e voce esta acima do peso\n", imc);
}
if (imc == 30 && imc <=35){
printf("O seu IMC é %.2f e voce esta com obsidade 1 grau\n", imc);
}
if (imc ==35 && imc <=40){
printf("O seu IMC é %.2f e voce esta com obsidade 2 grau\n", imc);
}
if (imc >= 40 ){
printf("O seu IMC é %.2f e voce esta com obsidade 3 grau\n", imc);
}
}
int main (){
int opc, i;
setlocale(LC_ALL, "Portuguese");
do {
system("cls");
printf( " \t\t\t\t+------------------------------------+\n" );
printf( " \t\t\t\t|---------CADASTRO DE ALUNOS---------|\n" );
printf( " \t\t\t\t+------------------------------------+\n" );
printf( " \t\t\t\t|------>(1)- Cadastra aluno |\n" );
printf( " \t\t\t\t|------>(2)- Listar alunos |\n" );
printf( " \t\t\t\t|------>(3)- Apagar aluno |\n" );
printf( " \t\t\t\t|------>(4)- Listar IMC do aluno |\n" );
printf( " \t\t\t\t|------>(0)- Sair |\n" );
printf( " \t\t\t\t+------------------------------------+\n" );
printf( " \t\t\t\t|-----------Digite a opcao-----------|>>>" );
scanf( "%d", &opc );
switch(opc) {
case 1:
for (i = 0; i <MAX; i++){
int codigo;
printf (" +---------------------------------+\n");
printf (" | CADASTRO |\n");
printf (" +---------------------------------+\n");
printf (" | Numero de cadastro |>>>");
scanf ("%d", &codigo);
printf (" \n|-----------Nome do aluno---------|>>");
scanf ("%s", &valuno[codigo].nome);
printf (" \n|----------Email do aluno---------|>>");
scanf ("%s", &valuno[codigo].email);
printf (" \n|----------Peso do aluno----------|>>");
scanf ("%f", &valuno[codigo].peso);
printf (" \n|----------Altura do aluno--------|>>");
scanf ("%f", &valuno[codigo].altura);
if(opc == 0){
printf("Até logo...\n");
break;
}
break;
case 2:lis();
break;
case 3 :ex();
break;
case 4 : imc();
break;
default:
printf ("Opcao invalida\n");
break;
}
system("pause");
}
} while (1);
return 0;
}