Tenho um pequeno problema no meu programa de registro na linguagem C,veja:
#include<stdio.h>
#include<stdlib.h>
int main(){
int i,opcao;
float somaAltura=0,mg;
struct
{
char nome[30];
float altura;
}pessoas[15];
printf("nMenu");
printf("n1-Cadastrar as 15 pessoas");
printf("n2-Mostrar registro dos menores que 1,5m");
printf("n3-Mostrar registro dos maiores que a media geral das alturas");
printf("n4-Sair do programa");
printf("nDigite a opcao desejada:");
scanf("%d",&opcao);
if(opcao>1) return 0;
for(i=0;i<15;i++)
{
fflush(stdin);
getchar();
printf("Nome:");
fgets(pessoas[i].nome,30,stdin);
fflush(stdin);
printf("nAltura:");
scanf("%f",&pessoas[i].altura);
somaAltura=somaAltura+pessoas[i].altura;
}
mg=somaAltura/15;
printf("Todos os 15 Nomes Foram Obtidosnn");
printf("Digite um nova opção:");
scanf("%d",&opcao);
if(opcao=='2'){
if(pessoas[i].altura<1.5) printf("%s,%.1f",pessoas[i].nome,pessoas[i].altura);
}
else if(opcao=='3'){
if(pessoas[i].altura>mg) printf("%s,%.1f",pessoas[i].nome,pessoas[i].altura);
}
else if(opcao=='4') return 0;
else if(opcao<1||opcao>4) printf("Opcao nao existente:");
getchar();
}
O program compila e é executado no entanto,épossível cadastrar a primeira pessoa(nome e sobrenome),mas a segunda não,quando cadastro a segunda pessoa o programa pula para altura
Como faço para corrigir o problema?
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Substituindo o NetworkManager pelo iwd (e iwgtk)
Em qual Arquivo colocar as Configurações
Forçar resolução teimosa no Wayland
Como fazer um pendrive bootável utilizando a ferramenta Rufus
Instalar Linux em notebook Sony Vaio VPCEG13EB (1)
Quando vocês pararam de testar distros? (18)









