Utilizando ESTRUTURA DE DADOS (REGISTRO) - abordagem simples e rápida
Publicado por Thiago 31/01/2006
[ Hits: 12.033 ]
Neste fonte implemento o conceito de registro (variável composta heterogênea) muito utilizado em algoritmos. Na linguagem C um registro é conhecido por estrutura.
Diferentemente das variáveis compostas homogêneas (vetores e matrizes) que só podem guardar um tipo de dado, as estruturas de dados guardam tipos de dados variados.
/* Programa: ALUNO.C
Autor: thiagoamm
Data: 31/01/06 */
#include <stdio.h>
int main(void)
{
struct cad_alu
{
char nome[41];
float nota[4];
};
struct cad_alu aluno[4];
int i,j;
float media;
char resp;
puts("\n");
/* Lendo alunos */
for (i = 0; i <= 3; i++)
{
printf("\nInforme o nome do %do. aluno: ",i + 1);
fflush(stdin);
fgets(aluno[i].nome,41,stdin);
/* Lendo notas do aluno */
for (j = 0; j <= 3; j++)
{
printf("Nota (nr%d). do aluno: ",j + 1);
fflush(stdin);
scanf("%f",&aluno[i].nota[j]);
while (aluno[i].nota[j] < 0 || aluno[i].nota[j] > 100)
{
printf("Nota (nr%d). do aluno: ",j + 1);
fflush(stdin);
scanf("%f",&aluno[i].nota[j]);
}
}
}
/* Escrevendo alunos */
for (i = 0; i <= 3; i++)
{
printf("\nAluno nr.%d ..: %s",i + 1,aluno[i].nome);
/* Escrevendo notas do aluno */
for (j = 0; j <= 3; j++)
printf("nota nr.%d ...: %6.2f\n",j + 1,aluno[i].nota[j]);
}
printf("\nDeseja verificar quais alunos foram aprovados? ");
fflush(stdin);
resp = getchar();
if (resp == 's' || resp == 'S')
{
for (i = 0; i <= 3; i++)
{
media = 0;
for (j = 0; j <= 3; j++)
{
media += aluno[i].nota[j];
}
media = media / 4;
if (media >= 50)
printf("\n--> Aluno nr%d. aprovado com media = %6.2f",i + 1,media);
}
puts("\n");
}
return(0);
}
Quantos números primos você quizer!!!
Cálculo da equação do segundo grau
Bluefin - A nova geração de ambientes de trabalho Linux
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Pós-instalação do elementary OS 8.1
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Estou com um problema no meu desktop do ubuntu (1)
Conky não mostra temperaturas da CPU no notebook (3)
Não estou conseguindo fazer funcionar meu Postfix na versão 2.4 no Deb... (0)









