Você está na página 1de 8

Estruturas de dados homogêneas (vetores)

1. Escreva um programa que alimente um vetor com 5 números inteiros e apresente na tela o vetor em
ordem inversa.

#include <stdio.h>

int main() {

int vetor[5], i;

/* Alimenta o vetor */
for(i = 0; i < 5; i++){
printf("Informe elemento %d: ", i + 1);
scanf("%d", &vetor[i]);
}

/* Apresenta os elementos do vetor em ordem inversa */


for(i = 4; i >= 0; i--){
printf("\nElemento %d: %d", i + 1, vetor[i]);
}

return 0;
}

2. Escreva um programa que alimente um vetor com 5 números inteiros. Apresente na tela apenas os
valores ímpares que aparecem no vetor.

#include <stdio.h>

int main() {

int vetor[5], i;

/* Alimenta o vetor */
for(i = 0; i < 5; i++){
printf("Informe elemento %d: ", i + 1);
scanf("%d", &vetor[i]);
}

/* Apresenta os elementos ímpares do vetor */


for(i = 0; i < 5; i++){
if(vetor[i] % 2 != 0){
printf("\nElemento %d: %d", i + 1, vetor[i]);
}
}
return 0;
}

3. Escreva um programa que alimente um vetor com 5 números e calcule a média destes valores. Na
sequência, apresente na tela os valores que são iguais ou superiores à média.

#include <stdio.h>

int main() {

float vetor[5], soma, media;


int i;

soma = 0;

/* Alimenta o vetor */
for(i = 0; i < 5; i++){
printf("Informe elemento %d: ", i + 1);
scanf("%f", &vetor[i]);
}

/* Calcula a soma dos elementos */


for(i = 0; i < 5; i++){
soma += vetor[i];
}

media = soma / 5;

/* Verifica os elementos inferiores à média */


for(i = 0; i < 5; i++){
if(vetor[i] < media){
printf("\nElemento %d: %d", i + 1, vetor[i]);
}
}

return 0;
}

4. Escreva um programa que alimente um vetor A com 5 números inteiros. Em um vetor B, armazene o
dobro de cada um dos números vetor A e apresente o vetor B na tela.

#include <stdio.h>

int main() {

int A[5], B[5], i;

/* Alimenta o vetor A */
for(i = 0; i < 5; i++){
printf("Informe elemento %d: ", i + 1);
scanf("%d", &A[i]);
}

/* Alimenta o vetor B */
for(i = 0; i < 5; i++){
B[i] = A[i] * 2;
}

/* Apresenta o vetor B */
printf("\nVetor B:\n");

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


printf("\nElemento %d: %d", i + 1, B[i]);
}

return 0;
}

5. Escreva um programa que alimente um vetor com 5 números. Apresente na tela o menor valor do
vetor, o maior valor do vetor, a soma dos valores do vetor e a média dos valores do vetor.

#include <stdio.h>

int main() {

float vetor[5], menor, maior, soma, media;


int i;

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


printf("Informe elemento %d: ", i + 1);
scanf("%f", &vetor[i]);
}

menor = vetor[0];
maior = vetor[0];
soma = vetor[0];

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


if(vetor[i] < menor){
menor = vetor[i];
}
if(vetor[i] > maior){
maior = vetor[i];
}
soma += vetor[i];
}
media = soma / 5;

printf("\nMenor valor: %.1f", menor);


printf("\nMaior valor: %.1f", maior);
printf("\nSoma: %.1f", soma);
printf("\nMédia: %.1f", media);

return 0;
}

6. Escreva um programa que calcule o produto escalar entre dois vetores de inteiros de tamanho igual a
5. Exemplo: {0, 2, 4, 6, 8} x {1, 3, 5, 7, 9} = 0 * 1 + 2 * 3 + 4 * 5 + 6 * 7 + 8 * 9 = 140.

#include <stdio.h>

int main() {

int vetor_1[5] = {0, 2, 4, 6, 8}, vetor_2[5] = {1, 3, 5, 7, 9}, produto_escalar,


i;

produto_escalar = 0;

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


produto_escalar += vetor_1[i] * vetor_2[i];
}

printf("O produto escalar é: %d", produto_escalar);

return 0;
}

7. Escreva um programa que armazene 5 números em um vetor e apresente uma listagem contendo o
índice do elemento e uma das mensagens: par ou ímpar.

#include <stdio.h>

int main() {

int vetor[5] = {11, 20, 34, 47, 58}, i;

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


printf("\nÍndice %d: %d", i, vetor[i]);

if(vetor[i] % 2 == 0){
printf("\nNúmero par.");
}
else{
printf("\nNúmero ímpar.");
}
}

return 0;
}

8. Escreva um programa alimente um vetor de 5 números inteiros distintos. Em seguida, leia um número
qualquer do teclado e mostre na tela o índice em que ele se encontra no vetor, ou então a mensagem
"Não encontrado", se ele não estiver presente no vetor.

#include <stdio.h>
#include <stdbool.h>

int main() {

int vetor[5] = {11, 20, 34, 47, 58}, num, i;


bool encontrado;

encontrado = false;

printf("Informe número: ");


scanf("%d", &num);

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


if(vetor[i] == num){
printf("O número foi encontrado no índice %d", i);
encontrado = true;
}
}

if(encontrado == false){
printf("Número não encontrado!");
}

return 0;
}

9. Um armazém trabalha com 10 mercadorias diferentes identificadas pelos números inteiros de 0 a 9. O


dono do armazém anota a quantidade de cada mercadoria vendida durante o mês. Ele tem uma
tabela que indica para cada mercadoria o preço de venda. Escreva um programa que leia a quantidade
vendida de cada produto no final do mês (armazenando-os em um vetor Q) e o preço de venda de
cada um (armazenado-os em um vetor P). Em seguida, calcule e apresente o faturamento mensal do
armazém.

#include <stdio.h>

int main() {
int Q[12], i;
float P[12], faturamento_mensal;

faturamento_mensal = 0;

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


printf("Informe a quantidade vendida do produto %d: ", i);
scanf("%d", &Q[i]);
}

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


printf("Informe o preço de venda do produto %d: ", i);
scanf("%f", &P[i]);
}

/* Calcula o faturamento mensal*/


for(i = 0; i < 10; i++){
faturamento_mensal += Q[i] * P[i];
}

printf("O faturamento mensal foi de: %.2f", faturamento_mensal);

return 0;
}

10. Escreva um programa que preencha um vetor de 100 elementos inteiros com os números 10, 20, 30,
40, 50, ... , 1000. Apresentar o vetor na tela após o seu total preenchimento.

#include <stdio.h>

int main() {

int vetor[100], i;

/* Alimenta o vetor */
for(i = 0; i < 100; i++){
vetor[i] = (i + 1) * 10;
}

/* Apresenta o vetor */
for(i = 0; i < 100; i++){
printf("%d ", vetor[i]);
}

return 0;
}

11. Tentando descobrir se um dado era viciado, um dono de cassino honesto (risos) o lançou 15 vezes.
Escreva um programa que dados os resultados dos lançamentos, armazene em um vetor o número de
ocorrências de cada face. Apresente o resultado na tela.

#include <stdio.h>

int main() {

int vetor[6] = {0, 0, 0, 0, 0, 0}, num, i;

for(i = 1; i <= 15; i++){


printf("Informe número %d: ", i);
scanf("%d", &num);

vetor[num - 1]++;
}

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


printf("\nOcorrências face %d: %d", i + 1, vetor[i]);
}

return 0;
}

12. Escreva um programa que alimente um vetor G de 6 elementos contendo o gabarito da Mega-Sena e
um vetor A de 10 elementos contendo uma aposta. A seguir, mostre na tela quantos pontos fez o
apostador.

#include <stdio.h>

int main() {

int G[6] = {3, 7, 15, 25, 47, 49}, A[10] = {12, 19, 25, 28, 31, 34, 42, 47, 49,
51}, i, j, acertos;

acertos = 0;

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


for(j = 0; j < 10; j++){
if(G[i] == A[j]){
acertos++;
}
}
}

printf("Número de acertos: %d", acertos);

return 0;
}

Você também pode gostar