Dúvida em alocar dinamicamente uma estrutura

1. Dúvida em alocar dinamicamente uma estrutura

Murillo Rodrigues
murillohrr

(usa Outra)

Enviado em 26/07/2017 - 17:35h

Estou com uma tremenda dúvida em alocar dinamicamente minha estrutura, e dps chama e editar seus componentes, na minha main eu queria fazer com o que o usuario dissesse quantoas pessoas queria cadastrar ja de inicio: segue abaixo meu codigo

#include <stdio.h>
#include <string.h>

#include <stdlib.h>


typedef struct aluno
{
int id;
char nome[30];
int turma;
float provas[4];
float freq;
}aluno;


void menu(){
int aux;
printf("BEM VINDO AO CADASTRAMENTO DE ALUNOS ELETRONICA\n");
printf("1.CADASTRAR ALUNOS\n");
printf("2.EXIBIR TODOS OS ALUNOS\n");
printf("3.EXIBIR ALUNOS APROVADOS\n");
printf("4.EXIBIR MEDIA FINAL DE TURMA\n");
printf("5.SAIR\n");
scanf("%d",&aux);

switch (aux){
case 1:
cadastrar();
break;
case 2:
exibir();
break;
case 3:
alunosaprovados();
break;
case 4:
mediafinal();
break;
case 5:
exit;
}
}

void cadastrar(){
int *v;
int a;
printf("QUANTOS ALUNOS DESEJA INSERIR?\n");
scanf("%d",&a);

v=(int*)malloc(a*sizeof(int)); //alocando memoria do vetor

for (int i = 0; i < a; ++i)
{
printf("ID\n");
scanf("%i",&alu[i].id);
printf("NOME\n");
gets();
scanf("%[^\n]",alu[i].nome);
printf("TURMA\n");
scanf("%d",alu[i].turma);
printf("NOTAS DE 0 a 10\n");
scanf("%2.f %2.f %2.f %2.f\n",&alu[i].provas );
printf("FREQUENCIA de 0 a 100 porcento \n");
scanf("%2.f",&alu[i].freq);
}

}
void exibir(){
char repeat [50];
for (int i = 0; i <= v; ++i)
{
printf("%s\n",alu[i].id );
printf("%s\n",alu[i].nome );
printf("%d\n", alu[i].turma);
printf("%2.f\n", alu[i].provas);
printf("%2.f\n", age[i].freq);
}
printf("\nDeseja continuar? (S ou N) \n");
scanf("%c",&repeat);
if (repeat=='s' || repeat=='S')
void menu();
}

void alunosaprovados(){
int aux;
float media;
for (int i = 0; i < v; ++i)
{
aux+=alu[i].provas;
}
float media = aux/v;

if(media>5,9 && alu[i].freq<74.99){
for (int j = 0; i < v; ++j)
{
printf("ALUNOS APROVADOS\n");
printf("%s\n",alu[j].nome );
printf("NOTAS %d\n",alu[j].provas );
printf("FREQUENCIA %d\n",alu[j].freq );
}
}





}

int main()
{
int *v;
alunos alu[100];
v=(int*) malloc(size * sizeof(alunos));
menu();
return 0;
}


  


2. Re: Dúvida em alocar dinamicamente uma estrutura

???
gokernel

(usa Linux Mint)

Enviado em 27/07/2017 - 10:39h


Olá !

01: Você falou de alocação dinâmica:
https://pt.wikipedia.org/wiki/Lista_ligada

02: Para melhorar a leitura do seu código use as tags ( [ code ] ... código aqui ... [ / code ] ) ... OBS: sem espaços.








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts