Escolar Documentos
Profissional Documentos
Cultura Documentos
Os registros permitem que dentro de um único espaço seja possível guardar variavéis de vários
tipos diferentes (int, float, char), seria como criar uma tabela em um banco de dados.
Imagine por exemplo que você possui um registro com o nome "Boletim de Notas" dentro deste
registro você pode guardar várias variavéis, como: nome, nota, idade, média e etc.
Sintaxe de um registro:
Primeiro você declara as variáveis, depois você da um nome ao registro, após isso você irá
atribuir o nome do seu registro a uma variável.
typedef struct {
int matricula;
float media;
char nome[20];} tipo_aluno
tipo_aluno aluno;
Para usar o registro você deve informar a variável que atribuiu o registro . a variável dentro do
registro. (nome do registro.campo)
aluno.matricula 12345;
scanf("%f", &aluno.media);
gets(aluno.nome);
Você pode também criar um vetor de registro, basta definir quantos campos o registro terá.
typedef struct {
int matricula;
float media;
char nome[20];} tipo_aluno
tipo_aluno aluno[50];
Para inserir um valor no registro em uma posição especifica você só precisa especificar a posição.
aluno[2].media = 7.5
alunos[3].matricula = 12345
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
main(){
typedef struct { int mat, serie, irmao;
char nome[20];
float mens;
} Tipo_Aluno;
Tipo_Aluno aluno[20];
int qa, i, resp;
qa =0;
do{
system("cls");
printf("Colegio Legal\n");
printf("\n\nCadastro de Alunos\n\n");
printf("\nMatricula.: ");
scanf("%d",&aluno[qa].mat);
printf("\nNome......: ");
fflush(stdin);
gets(aluno[qa].nome);
printf("\nSerie(1-4): ");
scanf("%d",&aluno[qa].serie);
printf("\nIrmao na escola(1-sim/0-nao):");
scanf("%d",&aluno[qa].irmao);
switch(aluno[qa].serie){
case 1: aluno[qa].mens = 110; break;
case 2: aluno[qa].mens = 130; break;
case 3: aluno[qa].mens = 160; break;
case 4: aluno[qa].mens = 170; break;
}
if (aluno[qa].irmao == 1)
aluno[qa].mens = aluno[qa].mens*0.8;
qa++;
printf("\n\nDeseja cadastrar outro aluno(1-sim/0-nao)? ");
scanf("%d",&resp);