Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Introdução à Programação Orientada a Objetos: Registros e Structs em C, Notas de aula de Programação Orientada a Objetos

Linguagem Orientada a Objetos x Programação Estruturada

Tipologia: Notas de aula

2021

Compartilhado em 02/10/2023

renan-bezerra-angelim
renan-bezerra-angelim 🇧🇷

3 documentos

1 / 26

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Linguagem de Programação
Registros e structs
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a

Pré-visualização parcial do texto

Baixe Introdução à Programação Orientada a Objetos: Registros e Structs em C e outras Notas de aula em PDF para Programação Orientada a Objetos, somente na Docsity!

Linguagem de Programação

Registros e structs

Unidade 1: Conceitos de programação orientada a objetos

Objetivos: ● ● Compreender os conceitos Registros e structs; Aplicar estes conceitos em exemplos.

Registros e structs

● (^) Um registro é um pacote de variáveis, possivelmente de tipos diferentes. Cada variável é um campo do registro. Na linguagem C, registros são conhecidos como structs (o nome é uma abreviatura de structure ). ● (^) Podemos dizer que structs são conjuntos de dados de forma estruturada. ● (^) As variáveis internas contidas pela struct são denominadas membros da struct.

Registros e structs

Sintaxe: struct nome { tipo1 dado1; tipo2 dado2; … tipon dadon; };

● (^) É uma boa ideia dar um nome à classe de todos os registros de um mesmo tipo. No nosso exemplo, dma é um nome apropriado: struct dma { int dia; int mes; int ano; }; struct dma x; // um registro x do tipo dma struct dma y; // um registro y do tipo dma

● (^) Para se referir a um campo de um registro, basta escrever o nome do registro e o nome do campo separados por um ponto: x.dia = 31 ; x.mes = 12 ; x.ano = 2018 ;

Exemplo2:

struct dma {

int dia;

int mes;

Int ano;

} X1;

Int main ()

X1.dia = 3;

X1.mes = 7;

X1.ano = 2018 ;

Registros podem ser tratados como um novo tipo-de-dados. Depois da seguinte definição, por exemplo, poderemos passar a dizer data no lugar de struct dma: typedef struct dma data; data x, y;

Exemplo4:

typedef struct dma {

Int dia;

Int mês;

Int ano;

} data;

Int main ()

data X1;

X1.dia = 18;

X1.mes = 7;

X1.ano = 2018 ;

Altere o código para que a data seja inserida pelo usuário.

Usando struct, crie um programa que receba o cadastro de um aluno com matrícula, nome e curso e imprima os dados cadastrados em seguida.

#include #include #include using namespace std; struct aluno { int matricula; char nome[50]; char curso[50]; }; int main() { struct aluno a1,a2; cout<<"\n matricula: "; cin>>a1.matricula; cout<<"\n Nome: "; fflush(stdin); gets(a1.nome); cout<<"\n Curso: "; gets(a1.curso); a2=a1; cout<<"\n \n Matricula: "<<a2.matricula; cout<<"\n \n Nome: "<<a2.nome; cout<<"\n \n Curso: "<<a2.curso<<endl; system("pause"); return 0; }

#include #include using namespace std; struct Ficha_Aluno { int matricula; string nome; string curso; }; typedef struct Ficha_Aluno Aluno;

14 int main () { Aluno novoaluno[4]; for(int i=0;i<4;i++) { cout << "Digite a matricula do aluno "<<i+1<<endl; cin >> novoaluno[i].matricula; fflush(stdin); cout << "Digite o nome do aluno"<<endl; getline(cin, novoaluno[i].nome); cout << "Digite o curso do aluno"<<endl; getline(cin, novoaluno[i].curso); cout << "Aluno cadastrado com sucesso!"<<endl; } for(int i=0;i<4;i++) { cout << "Matricula: " <<novoaluno[i].matricula<<endl; cout << "Nome: " <<novoaluno[i].nome<<endl; cout << "Curso: " <<novoaluno[i].curso<<endl<<endl; } system ("pause"); }