10
Struct Marco Reis Nov/2009

Struct

  • Upload
    nascha

  • View
    34

  • Download
    0

Embed Size (px)

DESCRIPTION

Marco Reis Nov/2009. Struct. Struct. Coleção de um ou mais valores que podem ser agregados sob um nome único. Organiza o código, uma vez que possibilita ao programador trabalhar com os dados agregados como se fosse uma única variável. struct pessoa. #include ; - PowerPoint PPT Presentation

Citation preview

Page 1: Struct

StructMarco Reis

Nov/2009

Page 2: Struct

Struct• Coleção de um ou mais valores que

podem ser agregados sob um nome único.

• Organiza o código, uma vez que possibilita ao programador trabalhar com os dados agregados como se fosse uma única variável.

Page 3: Struct

struct pessoa#include <stdio.h>;

#include <string.h>;

/**

* Estrutura utilizada para representar uma pessoa

* */

struct Pessoa {

char nome[100];

char endereco[100];

char telefone[50];

int idade;

};

Page 4: Struct

Códigoint main() {

//Declaracao das variaveis do tipo struct

struct Pessoa usuario;

//Para campos char[] (string), utilize a rotina strcpy

strcpy(usuario.nome, "Marco Antonio");

strcpy(usuario.endereco, "GUARA");

strcpy(usuario.telefone, "87879898");

//Para tipos numericos faca associacao direta

usuario.idade = 30;

//Para acessar os dados gravados, utilize a mesma estrutura

printf("Dados do Usuario\n");

printf("Nome: %s\n", usuario.nome);

printf("Endereco: %s\n", usuario.endereco);

printf("Telefone: %s\n", usuario.telefone);

printf("Idade: %i\n", usuario.idade);

return 0;

}

Page 5: Struct

Atividade• Recupere as informações do usuário

através do scanf ou gets.

Page 6: Struct

struct Automovel/**

* Estrutura para armazenar os dados de um automovel

*/

struct Automovel {

char marca[100];

char modelo[100];

float preco;

int potencia;

};

Page 7: Struct

Código//

struct Automovel carro;

strcpy(carro.marca, "Volkswagen");

strcpy(carro.modelo, "Golf");

carro.preco = 49900.99;

carro.potencia = 117;

//

printf("\nDados do Automovel\n");

printf("Marca: %s\n", carro.marca);

printf("Modelo: %s\n", carro.modelo);

printf("Preco: %f\n", carro.preco);

printf("Potencia: %ihp\n\n", carro.potencia);

Page 8: Struct

Atividade• Crie uma struct para armazenar os

dados dos alimentos (quais as suas características).

• Informe dados e imprima um teste como os do exemplo.

Page 9: Struct

Vetores/**

* Para trabalhar com vetores, utiliza-se o mesmo principio

* Atencao especial para o indice de cada elemento

*/

struct Pessoa turma[5];

int i;

//Armazene os valores

for (i = 0; i < 5; i++) {

char nome[100];

printf("Informe o nome da %ia pessoa:\n", i + 1);

scanf("%s", nome);

strcpy(turma[i].nome, nome);

}

//Recupere seus dados

printf("Dados da Turma\n");

for (i = 0; i < 5; i++) {

printf("%i - %s\n", turma[i].nome);

}

Page 10: Struct

Atividade• Complete o programa e solicite ao

usuário todos os demais dados da struct Pessoa.

• Depois de inserir cada uma das pessoas, pergunte se deseja continuar inserindo ou se deseja encerrar e mostrar os dados já cadastrados.

• Crie um vetor para armazenar uma refeição completa: entrada, prato principal, bebida e sobremesa.