Escolar Documentos
Profissional Documentos
Cultura Documentos
struct struct_aluno
{
char nome[15 + 1];
float nota[NRNOTAS]; // vetor é um tipo de variável (indexada)
float media; // exclui a média do vetor de notas
char conceito;
};
char conceito( float media ); //calcula o conceito de um aluno
float nota_valida(); // le e valida uma nota
struct struct_aluno le_dados_aluno (); // prototipo da funcao de leitura
// prototipo da funcao de impressao
void imprime_dados_aluno (struct struct_aluno) ;
Slide 1 Inf 01202 - Prof. Marcelo Walter – Aula 23
int main()
{
// vetor com elementos do tipo struct_aluno
struct struct_aluno aluno[NRALUNOS];
int ind_al;
return 0;
}
*/ Vetor de Estruturas */
typedef struct { struct s_pessoa mulher[3];
int dia; ou
char mês [3+1] ; TIPO_PESSOA mulher [3];
int ano;
} TIPO_DATA;
int main ()
{
TIPO_PESSOA p = {"Joao",2300.00, {23, “Set", 1964}};
mostrar (p);
return 0;
}
Equivalentes!
#define NRALUNOS 5
#define NRNOTAS 3
struct struct_aluno
{
char nome[15+1];
float nota[NRNOTAS];
float media;
char conceito;
};
void imprime_dados_aluno (struct struct_aluno aluno) {... // mesma rotina de impressao
void le_aluno(struct struct_aluno *aluno);
printf(“\n”);
return 0;
}
printf("\nNome: ");
gets(aluno->nome); //aponta para posição: conteúdo
aluno->media = 0;
for (ind_al = 0; ind_al < NRNOTAS; n++)
{
printf("\nNota %d: ", ind_al + 1);
aluno->nota[ind_al] = nota_valida();
aluno->media = aluno->media + aluno->nota[ind_al];
}
aluno->media = aluno->media / NRNOTAS;
aluno->conceito = conceito(aluno->media);
int main(){
struct est_time times[NTIMES] = {“Alemanha”, 0, “Franca”, 0, “Brasil”, 0,”Italia”, 0,
“Argentina”, 0 };
struct est_resultado jogos[NTIMES][NTIMES];
…
}
Slide 29 Inf 01202 - Prof. Marcelo Walter – Aula 23