
UNIVERSIDADE FEDERAL DE PERNAMBUCO
CENTRO ACADÊMICO DO AGRESTE
NÚCLEO DE TECNOLOGIA
CURSO DE ENGENHARIA CIVIL
CURSO DE ENGENHARIA DE PRODUÇÃO
DISCIPLINA: Algoritmos e Programação de Computadores
DOCENTE: Michele Mara de Araújo Espíndula Lima
Lista de Exercícios 02
QUESTÕES
1. Escreva a saída produzida pela execução do programa abaixo:
#include <stdio.h>
int x, y;
void a(int x, int y) {
printf ("a: %d %d\n", x, y);
}
void b(int y) {
x -= y;
printf ("b: %d %d\n", x, y);
}
void c(void) {
int y =2;
x = 7;
printf ("c: %d %d\n", x, y);
}
void d(void) {
int x = 5;
printf ("d: %d %d\n", x, y);
}
void e(int x) {
y += 7;
printf ("e: %d %d\n", x, y);
}
void main (void) {
int x = 3;
y = 1;
c();
a(y,2);
e(8);
d();
b(x);
e(x+2);
}
2. Faça um programa que leia um número N do teclado e depois leia N números e coloque-os
num vetor, (este vetor pode conter no máximo 100 elementos). Faça uma verificação no seu
programa para que o usuário não digite um valor inválido para N. Após terminar a leitura,
apresente a seguinte lista de opções para o usuário:
1) Impressão dos valores lidos na mesma ordem em que foram digitados;
2) Impressão dos valores na ordem inversa de digitação;
3) Impressão do menor e o maior número do vetor;
4) Impressão da média dos valores e de quantos números estão acima da média e quantos
estão abaixo da média;
5) Encerrar o programa.
3. Escreva uma função que, dado um polinômio na forma vetorial um número real x, calcule f(x)
(o valor do polinômio para aquele valor de x). Quais são os parâmetros e o valor de retorno
desta função?
4. Faça uma rotina que recebe 2 vetores de 20 elementos inteiros e que retorne, um outro vetor
de 40 elementos contendo, nas posições pares os valores do primeiro e nas posições impares
os valores do segundo.
5. Faça um programa que preencha dois vetores A e B, com 10 posições cada um. e depois
apresente a seguinte lista de opções para o usuário:
a) Imprime a união de A com B;
b) Imprime a intersecção entre A e B.