Você está na página 1de 3

CEFET – MG / CAMPUS LEOPOLDINA

CURSO: TÉCNICO EM INFORMÁTICA INDUSTRIAL – INTEGRADO


LLPA – LISTA 16 – Struct
NOME:_________________________________________ DATA: _________
TURMA: _______ SUBGRUPO: ______

1) Fazer um algoritmo para ler os dados de um aluno. Os dados a serem guardados nesta estrutura
são nome (100 caracteres), curso (40 caracteres) e idade (inteiro). A leitura e a impressão dos
dados deverão ser realizadas utilizando dois procedimentos distintos. Os procedimentos criados
devem ser usados na função principal (main).

2) Criar uma estrutura chamada ponto contendo as coordenadas x e y (real) do ponto. Na função
principal, declarar 2 pontos, ler as coordenadas x e y de cada ponto e calcular a distância entre
eles. Apresentar ao final a distância euclidiana entre estes dois pontos.

3) Seja a seguinte struct que é utilizada para descrever os produtos que estão no estoque de uma
loja:

struct Produto {
char nome[30]; /* Nome do
produto */ int codigo; /*
Codigo do produto */ float
preco; /* Preco do produto */
};

a) Escreva uma instrução que declare um vetor de Produto com 4 itens de produtos;
b) Atribua os valores "Pe de Moleque", 13205 e R$0,20 aos membros da posição 0 e os
valores "Cocada Baiana", 15202 e R$0,50 aos membros da posição 1 do vetor anterior;
c) Preencha os outros 2 produtos com valores digitados pelo usuário.
d) Crie um procedimento para imprimir todos os produtos do vetor Produto e utilize-o na
função principal.

4) Crie uma struct para descrever restaurantes. Os campos devem armazenar o nome do
restaurante, o endereço, o tipo de comida (brasileira, chinesa, francesa, italiana, japonesa, etc) e
uma nota para a cozinha (entre 0 e 5). Crie uma matriz 3 x 3 com esta struct e escreva um
programa que:
a) Leia/preencha toda a matriz de restaurantes;
b) Imprima toda a matriz de restaurantes na tela;
c) Liste os restaurantes com nota superior a um determinado valor, determinado pelo usuário;
d) Liste todos os restaurantes com determinado tipo de comida, determinado pelo usuário.

1
5) Escreva uma função que receba um número inteiro que representa um intervalo de tempo
medido em minutos e devolva o correspondente número de horas e minutos (por exemplo,
converte 131 minutos em 2 horas e 11 minutos). Use uma struct como a seguinte:
struct hm {
int horas;
int minutos;
};

6. Crie uma estrutura chamada DadosAluno, que armazena o nome, a média das notas e a idade de
um aluno. Na função main, crie um vetor com 10 alunos, cujos dados serão digitados pelo
usuário. Ao final, exiba todos os dados cadastrados e a média de notas e de idade dos alunos
cadastrados.

7. Fazer um programa que cria uma estrutura livro, que contém os elementos título, ano de edição,
número de páginas e preço. Criar uma variável desta estrutura que é um vetor de 5 elementos.
Ler os valores para a estrutura e imprimir a média do número de páginas dos livros.

8. Foi realizada uma pesquisa entre 500 habitantes de certa região. De cada habitante foram
coletados os dados: idade, sexo, salário e número de filhos. Crie a estrutura de dados adequada
para armazenar estas informações e faça um procedimento que armazene as informações
digitadas pelo usuário na estrutura de dados criada. Faça também uma função que calcula a
média do salário dos habitantes. Utilize as sub-rotinas criadas no programa principal.

9. Faça um programa que armazene as informações de 11 jogadores de um time de futebol. Cada


jogador é identificado pelo número da sua camisa, pelo seu peso, altura e pela inicial do seu
nome. O programa deverá ler todas as informações e imprimir ao final a lista completa de
jogadores com todas as informações lidas, a inicial do jogador mais baixo e o número do
jogador mais pesado.

10. Faça um programa que permita a entrada de registros com CPF, nome, idade, cidade e telefone
de no máximo 100 pessoas. Faça um menu com as seguintes opções:

Menu:

1 – Ler as informações de uma pessoa

2 – Imprima por idade

3 – Imprima por inicial

4 – Imprima todos os registros cadastrados

2
O programa deverá ter as seguintes características:

- No primeiro item, peça inicialmente o índice do vetor que o usuário deseja alterar.

- No segundo item, peça a idade mínima e máxima e imprima as pessoas que estão neste
intervalo.

- Faça funções para realizar as operações de cada um dos itens do menu.

- Inicialize o CPF de todos os 100 registros no início do programa com -1.


- Utilize essa informação no item 4 para definir se um registro foi ou não lido naquela posição
específica do vetor. CPF com valor -1 simboliza posições não lidas do vetor.

Você também pode gostar