Baixe o app para aproveitar ainda mais
Prévia do material em texto
Registro (ou struct) Prof. José Renato Registro Um registro é uma estrutura de dados heterogênea, ou seja, formada por uma conjunto de variáveis (campos) que podem assumir tipos diferentes de dados, inclusive os tipos compostos (vetores, matrizes e registros) Na linguagem C, um registro é declarado através da palavra reservada struct. struct funcionario { char nome[30]; int idade; char sexo; float altura; }; main() { struct funcionario f; } Declaração de Registros Acessando elementos • O acesso ao campo de um registro é feito através dos identificadores do registro e do campo separados por um ponto. • Exemplo: f.altura := 1.78; f.sexo := 'M'; #include<stdio.h> #include<stdlib.h> struct aluno { char nome[40]; float P1,P2; int faltas; } main() { struct aluno aluno1; printf("digite o nome\n"); gets(aluno1.nome); printf("digite a primeira nota\n"); scanf("%f",&aluno1.P1); printf("digite a segunda nota\n"); scanf("%f",&aluno1.P2); printf("digite a qtd de faltas\n"); scanf("%d",&aluno1.faltas); printf("%s\n", aluno1.nome); printf("%2.1f\n", aluno1.P1); printf("%2.1f\n", aluno1.P2); printf("%d\n", aluno1.faltas); system("pause"); } Vetor de Registros • Para declarar um vetor de struct • Define-se a struct; • Declara-se o vetor do tipo struct criado; Exemplo: • struct aluno Turma380[28]; • struct endereco vetorEndAmigos[100]; Exemplo de vetor de registro #include<stdio.h> #include<stdlib.h> struct aluno { char nome[10]; float P1,P2; int faltas; } main() { struct aluno alunos[5]; int i; for (i=0;i<5;i++) { system("cls"); printf("digite o nome\n"); scanf("%s",alunos[i].nome); printf("digite a primeira nota\n"); scanf("%f",&alunos[i].P1); printf("digite a segunda nota\n"); scanf("%f",&alunos[i].P2); printf("digite a qtd de faltas\n"); scanf(" %d",&alunos[i].faltas); } for (i=0;i<5;i++) { printf("--------------------\n"); printf("%s\n", alunos[i].nome); printf("%2.1f\n", alunos[i].P1); printf("%2.1f\n", alunos[i].P2); printf("%d\n", alunos[i].faltas); } system("pause"); } Exercícios • Desenvolva um programa que receba o nome e as três notas de cinco alunos e ao final exiba o nome, as três notas e a média de cada aluno (utilize vetor de struct).
Compartilhar