Considere que um médico armazena algumas informações sobre seus pacientes (estrutura: código, nome, idade, sexo, altura e peso). Crie um programa que armazene (utilizando função) essas informações e determine:
a. O nome da pessoa com maior peso.
b. O nome e a idade das pessoas que estejam acima de seu peso ideal.
c. O nome das pessoas que estejam abaixo de seu peso ideal, mostrando ainda o peso que essas pessoas deverão alcançar para atingir esse peso ideal.
Utilize as expressões abaixo para determinar o peso ideal:
Homens: (72,7 * altura) – 58.
Mulheres: (62,1 * altura) – 44,7.
Encerre a leitura dos dados quando atingir 15 pacientes, ou ler código = 0 (zero).
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <conio.h>
typedef struct {
char sexo, nome[50];
int idade, codigo;
float peso, altura;
}paciente;
cadastro(paciente *x){
int l;
printf("Insira o código do paciente: ");
scanf("%d", &x[l]->codigo); fflush(stdin);
printf("Insira o nome do paciente: ");
gets(x[l]->nome); fflush(stdin);
printf("Insira a idade do paciente: ");
scanf("%d", &x[l]->idade); fflush(stdin);
printf("Insira o sexo do paciente: ");
scanf("%c", &x[l]->sexo); fflush(stdin);
printf("Insira a altura do paciente(ex. 1.75): ");
scanf("%f", &x[l]->altura); fflush(stdin);
printf("Insira o peso do paciente(ex. 75.5");
scanf("%f", &x[l]->peso); fflush(stdin);
}
main(){
setlocale(LC_ALL, "portuguese");
int l=0, c;
paciente x[15];
for(c=0;c<15;c++){
cadastro(&x);
}
}
Tenho que fazer esse exercício da faculdade, mas não consigo de jeito nenhum. Já pesquisei em todo lugar possivel e nao encontrei a solução para o meu problema.
O meu problema é na chamada da função cadastro, eu não sei como anuncio a struct. Se alguém conseguir tirar minha duvida ficarei grato.