Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Ponteiro pra estrutura


Guest Brow.

Pergunta

Oi, alguém sabe como passa a função na main sendo ponteiro pra estrutura?

consegui assim, da erro.

int aprovado (struct aluno *a);

main()

{

struct aluno p1,p2,p3,x,res;

printf("digite tres notas\n");

scanf("%f %f %f",&x.p1,&x.p2,&x.p3);

res=aluno(&p1,&p2,&p3);

printf("%.2f",res.p1,res.p2,res.p3);

system("pause");

}

int aprovado(struct aluno *a)

{

float media=0,soma=0;

if(((a->p1>=3)&&(a->p2>=3)&&(a->p3>=3)))

{

soma= a->p1+a->p2+a->p3;

media=soma/3;

if(media>=5)

{

return 1;

}

else

{

return 0;

}

}

}

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Guest --Brown. --
Oi, alguém sabe como passa a função na main sendo ponteiro pra estrutura?

consegui assim, da erro.

int aprovado (struct aluno *a);

main()

{

struct aluno p1,p2,p3,x,res;

printf("digite tres notas\n");

scanf("%f %f %f",&x.p1,&x.p2,&x.p3);

res=aluno(&p1,&p2,&p3);

printf("%.2f",res.p1,res.p2,res.p3);

system("pause");

}

int aprovado(struct aluno *a)

{

float media=0,soma=0;

if(((a->p1>=3)&&(a->p2>=3)&&(a->p3>=3)))

{

soma= a->p1+a->p2+a->p3;

media=soma/3;

if(media>=5)

{

return 1;

}

else

{

return 0;

}

}

}

o que faltou da main

#include<stdio.h>

#include<stdlib.h>

struct aluno

{

char n[81];

char e[41];

float p1,p2,p3;

};

Link para o comentário
Compartilhar em outros sites

  • 0

Algumas coisas erradas no seu programa:

1) A função main é do tipo int mas não retorna nada!

Adicione um return no final.

2) res=aluno(&p1,&p2,&p3);

aluno é uma estrutura, não uma função. Pelo jeito isto é que está dando errado! Acho que o que você queria aqui era chamar a função aprovado, não é?

aprovado precisa de um parâmetro: ponteiro para estrutura. Assim utilize o operador &.

Exemplo: aprovado(&x);

3) res é uma estrutura e não poderia receber o retorno de aprovado que é um int. O que você quer? que aprovado retorne uma estrutura?

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...