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


Atividades de programação - listac06, Notas de estudo de Engenharia de Telecomunicações

atividades de programação(entrada e saida atéstructs)

Tipologia: Notas de estudo

2016

Compartilhado em 29/04/2016

simao-carlos-12
simao-carlos-12 🇧🇷

4.6

(33)

36 documentos

1 / 4

Toggle sidebar

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

Não perca as partes importantes!

bg1
Universidade Federal de Uberlˆ
andia - UFU
Faculdade de Computac¸ ˜
ao - FACOM
Lista de exerc´
ıcios de programac¸ ˜
ao em linguagem C
Exerc´ıcios: Structs
1. Escreva um trecho de c´
odigo para fazer a criac¸ ˜
ao dos novos tipos de dados conforme
solicitado abaixo:
Hor´
ario: composto de hora, minutos e segundos.
Data: composto de dia, m ˆ
es e ano.
Compromisso: composto de uma data, hor ´
ario e texto que descreve o compromisso.
2. Implemente um programa que leia o nome, a idade e o enderec¸o de uma pessoa e
armazene os dados em uma estrutura.
3. Construa uma estrutura aluno com nome, n´
umero de matr´
ıcula e curso. Leia do usu ´
ario
a informac¸ ˜
ao de 5 alunos, armazene em vetor dessa estrutura e imprima os dados na
tela.
4. Crie uma estrutura representando os alunos de um determinado curso. A estrutura deve
conter a matr´
ıcula do aluno, nome, nota da primeira prova, nota da segunda prova e nota
da terceira prova.
(a) Permita ao usu´
ario entrar com os dados de 5 alunos.
(b) Encontre o aluno com maior nota da primeira prova.
(c) Encontre o aluno com maior m´
edia geral.
(d) Encontre o aluno com menor m´
edia geral
(e) Para cada aluno diga se ele foi aprovado ou reprovado, considerando o valor 6 para
aprovac¸ ˜
ao.
5. Considerando a estrutura
struct Vetor{
float x;
float y;
float z;
};
para representar um vetor no R3, implemente um programa que calcule a soma de dois
vetores.
6. Fac¸a um programa que realize a leitura dos seguintes dados relativos a um conjunto de
alunos: Matricula, Nome, C ´
odigo da Disciplina, Nota1 e Nota2. Considere uma turma de
at´
e 10 alunos. Ap ´
os ler todos os dados digitados, e depois de armazen´
a-los em um vetor
de estrutura, exibir na tela a listagem final dos alunos com as suas respectivas m´
edias
finais (use uma m´
edia ponderada: Nota1 com peso=1.0 e Nota2 com peso=2.0).
7. Fac¸a um programa que converta coordenadas polares para cartesianas:
Crie e leia um ponto em coordenada polar, composto por raio (r) e argumento (a)
em radianos.
1
pf3
pf4

Pré-visualização parcial do texto

Baixe Atividades de programação - listac06 e outras Notas de estudo em PDF para Engenharia de Telecomunicações, somente na Docsity!

Universidade Federal de Uberl ˆandia - UFU Faculdade de Computac¸ ˜ao - FACOM Lista de exerc´ıcios de programac¸ ˜ao em linguagem C

Exerc´ıcios: Structs

  1. Escreva um trecho de c ´odigo para fazer a criac¸ ˜ao dos novos tipos de dados conforme solicitado abaixo: - Hor ´ario: composto de hora, minutos e segundos. - Data: composto de dia, m ˆes e ano. - Compromisso: composto de uma data, hor ´ario e texto que descreve o compromisso.
  2. Implemente um programa que leia o nome, a idade e o enderec¸o de uma pessoa e armazene os dados em uma estrutura.
  3. Construa uma estrutura aluno com nome, n ´umero de matr´ıcula e curso. Leia do usu ´ario a informac¸ ˜ao de 5 alunos, armazene em vetor dessa estrutura e imprima os dados na tela.
  4. Crie uma estrutura representando os alunos de um determinado curso. A estrutura deve conter a matr´ıcula do aluno, nome, nota da primeira prova, nota da segunda prova e nota da terceira prova.

(a) Permita ao usu ´ario entrar com os dados de 5 alunos. (b) Encontre o aluno com maior nota da primeira prova. (c) Encontre o aluno com maior m ´edia geral. (d) Encontre o aluno com menor m ´edia geral (e) Para cada aluno diga se ele foi aprovado ou reprovado, considerando o valor 6 para aprovac¸ ˜ao.

  1. Considerando a estrutura

struct Vetor{ float x; float y; float z; };

para representar um vetor no R^3 , implemente um programa que calcule a soma de dois vetores.

  1. Fac¸a um programa que realize a leitura dos seguintes dados relativos a um conjunto de alunos: Matricula, Nome, C ´odigo da Disciplina, Nota1 e Nota2. Considere uma turma de at ´e 10 alunos. Ap ´os ler todos os dados digitados, e depois de armazen ´a-los em um vetor de estrutura, exibir na tela a listagem final dos alunos com as suas respectivas m ´edias finais (use uma m ´edia ponderada: Nota1 com peso=1.0 e Nota2 com peso=2.0).
  2. Fac¸a um programa que converta coordenadas polares para cartesianas:
    • Crie e leia um ponto em coordenada polar, composto por raio (r) e argumento (a) em radianos.
  • Crie outro ponto, agora em coordenada cartesiana, composto por x e y, sabendo que x = r ∗ cosa e y = r ∗ sina.

No programa principal, leia um ponto em coordenada polar e mostre as coordenadas do ponto gerado no plano cartesiano.

  1. Fac¸a um programa que armazene em um registro de dados (estrutura composta) os da- dos de um funcion ´ario de uma empresa, compostos de: Nome, Idade, Sexo (M/F), CPF, Data de Nascimento, C ´odigo do Setor onde trabalha (0-99), Cargo que ocupa (string de at ´e 30 caracteres) e Sal ´ario. Os dados devem ser digitados pelo usu ´ario, armazenados na estrutura e exibidos na tela.
  2. Fac¸a um programa que fac¸a operac¸ ˜oes simples de n ´umeros complexos:
    • Crie e leia dois n ´umeros complexos z e w, compostos por parte real e parte ima- gin ´aria.
    • Apresente a soma, subtrac¸ ˜ao e produto entre z e w, nessa ordem, bem como o m ´odulo de ambos.
  3. Utilizando uma estrutura, fac¸a um programa que permita a entrada de nome, enderec¸o e telefone de 5 pessoas e os imprima em ordem alfab ´etica.
  4. Fac¸a um programa que leia os dados de 10 alunos (Nome, matricula, M ´edia Final), arma- zenando em um vetor. Uma vez lidos os dados, divida estes dados em 2 novos vetores, o vetor dos aprovados e o vetor dos reprovados, considerando a m ´edia m´ınima para a aprovac¸ ˜ao como sendo 5.0. Exibir na tela os dados do vetor de aprovados, seguido dos dados do vetor de reprovados.
  5. Escolha um jogo de cartas, baseado em um “baralho tradicional” (cada carta tem seu naipe e seu valor) ou tipo “super trunfo” (cada carta possui um conjunto de atributos). Implemente a parte de distribuic¸ ˜ao (sorteio) de cartas para 2 jogadores, considerando que cada jogador ir ´a receber 5 cartas. Exiba na tela as cartas que cada um dos jogadores recebeu.
  6. Pec¸a ao usu ´ario para digitar seus dados pessoais (Nome, Enderec¸o, Data de Nasci- mento, Cidade, CEP, email), verifique se as informac¸ ˜oes de Data de Nascimento, CEP e email fazem sentido, e mostre ao usu ´ario as informac¸ ˜oes, se est ˜ao todas corretas, ou mostre que alguma informac¸ ˜ao estava errada.
  7. Fac¸a um programa que leia um vetor com os dados de 5 carros: marca (m ´aximo 15 letras), ano e prec¸o. Leia um valor p e mostre as informac¸ ˜oes de todos os carros com prec¸o menor que p. Repita este processo at ´e que seja lido um valor p = 0.
  8. Fac¸a um programa que leia um vetor com dados de 5 livros: t´ıtulo (m ´aximo 30 letras), autor (m ´aximo 15 letras) e ano. Procure um livro por t´ıtulo, perguntando ao usu ´ario qual t´ıtulo deseja buscar. Mostre os dados de todos os livros encontrados.
  9. Fac¸a um programa que seja uma agenda de compromissos e:
  • Crie e leia um vetor de 5 estruturas de dados com: compromisso (m ´aximo 60 letras) e data. A data deve ser outra estrutura de dados contendo dia, m ˆes e ano.
  • Leia dois inteiros M e A e mostre todos os compromissos do m ˆes M do ano A. Repita o procedimento at ´e ler M = 0.
  1. Fac¸a um programa que controla o consumo de energia dos eletrodom ´esticos de uma casa e:

(a) Crie um vetor Cadastro com 5 elementos. (b) Permita ao usu ´ario entrar com dados para preencher esse 5 cadastros. (c) Encontre a pessoa com maior idade entre os cadastrados (d) Encontre as pessoas do sexo masculino (e) Encontre as pessoas com sal ´ario maior que 1000. (f) Imprima os dados da pessoa cuja identidade seja igual a um valor fornecido pelo usu ´ario

  1. Escreva um programa que receba dois structs do tipo dma, cada um representando uma data v ´alida, e calcule o n ´umero de dias que decorreram entre as duas datas.

struct dma { int dia; int mes; int ano; };

  1. Fazer um programa para simular uma agenda de telefones. Para cada pessoa devem-se ter os seguintes dados:
    • Nome
    • E-mail
    • Enderec¸o (contendo campos para Rua, n ´umero, complemento, bairro, cep, cidade, estado, pa´ıs).
    • Telefone (contendo campo para DDD e n ´umero)
    • Data de anivers ´ario (contendo campo para dia, m ˆes, ano).
    • Observac¸ ˜oes: Uma linha (string) para alguma observac¸ ˜ao especial.

(a) Definir a estrutura acima. (b) Declarar a vari ´avel agenda (vetor) com capacidade de agendar at ´e 100 nomes. (c) Definir um bloco de instruc¸ ˜oes busca por primeiro nome: Imprime os dados da pessoa com esse nome (se tiver mais de uma pessoa, imprime para todas). (d) Definir um bloco de instruc¸ ˜oes busca por m ˆes de anivers ´ario: Imprime os dados de todas as pessoas que fazem anivers ´ario nesse m ˆes. (e) Definir um bloco de instruc¸ ˜oes busca por dia e m ˆes de anivers ´ario: Imprime os dados de todas as pessoas que fazem anivers ´ario nesse dia e m ˆes. (f) Definir um bloco de instruc¸ ˜oes insere pessoa: Insere por ordem alfab ´etica de nome. (g) Definir um bloco de instruc¸ ˜oes retira pessoa: Retira todos os dados dessa pessoa e desloca todos os elementos seguintes do vetor para a posic¸ ˜ao anterior. (h) Definir um bloco de instruc¸ ˜oes imprime agenda com as opc¸ ˜oes:

  • Imprime nome, telefone e e-mail.
  • Imprime todos os dados. (i) O programa deve ter um menu principal oferecendo as opc¸ ˜oes acima.